System and method for processing items ordered for customer pickup at a brick-and-mortar store of a retail enterprise

ABSTRACT

A system and method for processing items ordered for customer pickup from a brick-and-mortar store of a retail enterprise may determine that a customer has entered one of a plurality of geographic boundaries based on GPS tracking of the customer&#39;s mobile communication device, in response thereto, determine whether the entering customer has a completed order for pickup of at least one ordered item at the brick-and-mortar store associated with the geographic boundary, and in response thereto, control a display monitor located at an order pickup department of the store to display a message indicating that the customer has entered the one of the plurality of geographic boundaries and that the completed order to be picked up by the customer is complete.

CROSS-REFERENCE TO RELATED APPLICATIONS

This is a continuation of U.S. patent application Ser. No. 14/965,852,filed Dec. 10, 2015, which claims the benefit of, and priority to, U.S.Provisional Patent Application Ser. No. 62/090,211, filed Dec. 10, 2014,and to U.S. Provisional Patent Application Ser. No. 62/190,664, filedJul. 9, 2015, the disclosures of which are expressly incorporated hereinby reference.

FIELD OF THE INVENTION

The present invention relates generally to systems and methods forautomatically identifying customers at any of one or morebrick-and-mortar stores of a retail enterprise, and more specifically tosuch systems and methods for automatically identifying customers thathave one or more pending orders for one or more items to be produced byone or more product/service departments of the retail enterprise.

BACKGROUND

Retailers of goods and services typically offer such goods and servicesfor purchase via one or more conventional brick-and-mortar retailstores. At some such brick-and-mortar stores, one or more product and/orservice departments (“product/service departments”) may operate toreceive orders from customers for one or more specified items, and tothen manufacture, build, make or process the one or more specified itemsfor subsequent customer pick up. Such customer pick up typicallyrequires a customer to enter a specified brick-and-mortar store, proceedwithin the store to the product/service department from which the one ormore ordered items were ordered, engage an attendant of theproduct/service department attendant and communicate to the attendant atleast the customer's identity and a description of the one or moreordered items, whereupon the attendant then locates the one or moreitems within the product/service department and delivers the one or moreitems to the customer.

SUMMARY

The present invention may comprise one or more of the features recitedin the attached claims, and/or one or more of the following features andcombinations thereof. In one aspect, a method of identifying customerswith ordered items at a retail enterprise may comprise associating, witha first processor in a first database, each of a plurality ofdepartments within a brick-and-mortar outlet of the retail enterprisewith a different identification code, associating, with the firstprocessor in the first or a second database, one of a plurality ofcustomer codes identifying one of a plurality of customers of the retailenterprise and an order code identifying an order placed by theidentified customer for an item to be delivered to the identifiedcustomer by the one of the plurality of departments, and in response toa wirelessly received identification code and customer code,controlling, at least in part with the first processor, a displaymonitor at one of the plurality of departments to display a notificationmessage if the wirelessly received identification code matches the oneof the plurality of identification codes associated in the firstdatabase with the one of the plurality of departments and the wirelesslyreceived customer code matches the one of the plurality of customercodes associated in the first or second database with the order code,the notification message including information relating to at least oneof the customer identified by the matching one of the plurality ofcustomer codes and the order identified by the order code.

In another aspect, a system for identifying customers with ordered itemsat a retail enterprise may comprise a plurality of wireless signalbroadcasting devices located in, near or adjacent to a brick-and-mortaroutlet of the retail enterprise, at least one of the plurality ofwireless signal broadcasting devices located at or near one of aplurality of departments in the brick-and-mortar outlet, a displaymonitor located in the one of the plurality of departments, at least onedatabase having stored therein a plurality of identification codes eachidentifying a different one of the plurality of wireless signalbroadcasting devices and each associated in the at least one databasewith a location within, near or adjacent to the brick-and-mortar outletof a different one of the plurality of wireless signal broadcastingdevices, and a plurality of customer codes each identifying a differentone of a plurality of customers of the retail enterprise, one of theplurality of customer codes associated in the at least one database withan order code identifying an order placed by a corresponding one of theplurality of customers for an item to be delivered to the correspondingone of the plurality of customers by the one of the plurality ofdepartments, a processor, and memory having instructions stored thereinwhich, when executed by the processor, cause the processor to controlthe display monitor, in response to a wirelessly received identificationcode and customer code, to display a notification message if thewirelessly received identification code matches the one of the pluralityof identification codes associated in the at least one database with theone of the plurality of wireless signal broadcasting devices located ator near the one of a plurality of departments, and the wirelesslyreceived customer code matches the one of the plurality of customercodes associated in the database with the order code, the notificationmessage including information relating to at least one of the customeridentified by the matching customer code and the order identified by theorder code.

In yet another aspect, a system for identifying customers with ordereditems at a retail enterprise may comprise a plurality of wireless signalbroadcasting devices located in, near or adjacent to a brick-and-mortaroutlet of the retail enterprise, at least one of the plurality ofwireless signal broadcasting devices located at or near one of aplurality of departments in the brick-and-mortar outlet, a displaymonitor located in the one of the plurality of departments, at least onedatabase having stored therein a plurality of identification codes eachidentifying a different one of the plurality of wireless signalbroadcasting devices and each associated in the at least one databasewith a location within, near or adjacent to the brick-and-mortar outletof a different one of the plurality of wireless signal broadcastingdevices, and a plurality of customer codes each identifying a differentone of a plurality of customers of the retail enterprise, one of theplurality of customer codes associated in the at least one database withan order code identifying an order placed by a corresponding one of theplurality of customers for an item to be delivered to the correspondingone of the plurality of customers by the one of the plurality ofdepartments, and a processor, and a server coupled to each of theplurality of wireless signal broadcasting devices and to the displaymonitor, the server including at one module to control the displaymonitor, in response to a wirelessly received identification code andcustomer code, to display a notification message if the wirelesslyreceived identification code matches the one of the plurality ofidentification codes associated in the at least one database with theone of the plurality of wireless signal broadcasting devices located ator near the one of a plurality of departments, and the wirelesslyreceived customer code matches the one of the plurality of customercodes associated in the database with the order code, the notificationmessage including information relating to at least one of the customeridentified by the matching customer code and the order identified by theorder code.

In a further aspect, a non-transitory machine-readable medium maycomprise a plurality of instructions which, when executed by at leastone processor, result in the at least one processor associating in afirst database each of a plurality of departments within abrick-and-mortar outlet of the retail enterprise with a differentidentification code, associating in the first or a second database oneof a plurality of customer codes identifying one of a plurality ofcustomers of the retail enterprise and an order code identifying anorder placed by the identified customer for an item to be delivered tothe identified customer by the one of the plurality of departments, andin response to a wirelessly received identification code and customercode, controlling a display monitor at one of the plurality ofdepartments to display a notification message if the wirelessly receivedidentification code matches the one of the plurality of identificationcodes associated in the first database with the one of the plurality ofdepartments and the wirelessly received customer code matches the one ofthe plurality of customer codes associated in the first or seconddatabase with the order code, the notification message includinginformation relating to at least one of the customer identified by thematching one of the plurality of customer codes and the order identifiedby the order code.

In yet another aspect, a method of identifying customers with ordereditems at a retail enterprise may comprise associating, with a firstprocessor in a first database, each of one or more customer entrances ina brick-and-mortar outlet of the retail enterprise with a differentidentification code stored in the first database, associating, with thefirst processor in the first or a second database, one of a plurality ofcustomer codes stored in the first or second database and identifyingone of a plurality of customers of the retail enterprise with an ordercode identifying an order placed by the identified customer for an itemto be delivered to the identified customer by one of a plurality ofdepartments in the brick-and-mortar outlet and also with contactinformation identifying a mobile communication device associated withthe identified customer, comparing, with the first processor, awirelessly received identification code with the identification codesstored in the first database, if the wirelessly received identificationcode matches one of the identification codes associated in the firstdatabase with one of the one or more customer entrances in thebrick-and-mortar outlet, comparing, with the first processor, awirelessly received customer code with the plurality of customer codesstored in the first or second database, and if the wirelessly receivedcustomer code matches the one of the plurality of customer codesassociated in the first or second database with the order code,controlling, with the first processor, a display monitor at the one ofthe plurality of departments to display a first notification message andwirelessly transmitting, under control of the first processor, a secondnotification message to the mobile communication device identified bythe contact information associated in the first or second database withthe matching one of the plurality of customer codes, the first andsecond notification messages each including information relating to atleast one of the customer identified by the matching one of theplurality of customer codes and the order identified by the order code,and the second notification message further including informationrelating to an identity of the one of the plurality of departments.

In still a further aspect, a system for identifying customers withordered items at a retail enterprise may comprise a plurality ofwireless signal broadcasting devices located in, near or adjacent to abrick-and-mortar outlet of the retail enterprise, at least one databasehaving stored therein a plurality of identification codes eachidentifying a different one of the plurality of wireless signalbroadcasting devices and each associated in the at least one databasewith a wireless signal broadcasting device location corresponding to alocation within, near or adjacent to the brick-and-mortar outlet of adifferent one of the plurality of wireless signal broadcasting devices,and a plurality of customer codes each identifying a different one of aplurality of customers of the retail enterprise, one of the plurality ofcustomer codes associated in the at least one database with an ordercode identifying an order placed by one of the customers identified bythe one of the plurality of customer codes for an item to be deliveredto the identified customer by one of a plurality of departments withinthe brick-and-mortar outlet and also with contact informationidentifying a mobile communication device associated with the identifiedcustomer, a display monitor located in the one of the plurality ofdepartments, a processor, and memory having instructions stored thereinwhich, when executed by the processor, cause the processor to compare awirelessly received identification code with the plurality ofidentification codes stored in the at least one database, to compare awirelessly received customer code with the plurality of customer codesstored in the database if the wirelessly received identification codematches one of the plurality of identification codes stored in the atleast one database and the signal broadcasting device locationassociated in the at least one database with the matching one of theplurality of stored identification codes corresponds to one of one ormore entrances to the brick-and-mortar outlet, and, if the wirelesslyreceived customer code matches the one of the plurality of customercodes associated in the at least one database with the order code, tocontrol a display monitor at the one of the plurality of departments todisplay a first notification message and to wirelessly transmit a secondnotification message to the mobile communication device identified bythe contact information associated in the at least one database with thematching one of the plurality of customer codes, the first and secondnotification messages each including information relating to at leastone of the customer identified by the matching one of the plurality ofcustomer codes and the order identified by the order code.

In yet a further aspect, a system for identifying customers with ordereditems at a retail enterprise may comprise a plurality of wireless signalbroadcasting devices located in, near or adjacent to a brick-and-mortaroutlet of the retail enterprise, at least one database having storedtherein a plurality of identification codes each identifying a differentone of the plurality of wireless signal broadcasting devices and eachassociated in the at least one database with a wireless signalbroadcasting device location corresponding to a location within, near oradjacent to the brick-and-mortar outlet of a different one of theplurality of wireless signal broadcasting devices, and a plurality ofcustomer codes each identifying a different one of a plurality ofcustomers of the retail enterprise, one of the plurality of customercodes associated in the at least one database with an order codeidentifying an order placed by one of the customers identified by theone of the plurality of customer codes for an item to be delivered tothe identified customer by one of a plurality of departments within thebrick-and-mortar outlet and also with contact information identifying amobile communication device associated with the identified customer, adisplay monitor located in the one of the plurality of departments, anda server coupled to each of the plurality of wireless signalbroadcasting devices and to the display monitor, the server including atone module to compare a wirelessly received identification code with theplurality of identification codes stored in the at least one database,to compare a wirelessly received customer code with the plurality ofcustomer codes stored in the database if the wirelessly receivedidentification code matches one of the plurality of identification codesstored in the at least one database and the signal broadcasting devicelocation associated in the at least one database with the matching oneof the plurality of stored identification codes corresponds to one ofone or more entrances to the brick-and-mortar outlet, and, if thewirelessly received customer code matches the one of the plurality ofcustomer codes associated in the at least one database with the ordercode, to control a display monitor at the one of the plurality ofdepartments to display a first notification message and to wirelesslytransmit a second notification message to the mobile communicationdevice identified by the contact information associated in the at leastone database with the matching one of the plurality of customer codes,the first and second notification messages each including informationrelating to at least one of the customer identified by the matching oneof the plurality of customer codes and the order identified by the ordercode.

In still another aspect, a non-transitory machine-readable medium maycomprise a plurality of instructions which, when executed by at leastone processor, result in the at least one processor associating in afirst database each of one or more customer entrances in abrick-and-mortar outlet of the retail enterprise with a differentidentification code stored in the first database, associating in thefirst or a second database one of a plurality of customer codes storedin the first or second database and identifying one of a plurality ofcustomers of the retail enterprise with an order code identifying anorder placed by the identified customer for an item to be delivered tothe identified customer by one of a plurality of departments in thebrick-and-mortar outlet and also with contact information identifying amobile communication device associated with the identified customer,comparing a wirelessly received identification code with theidentification codes stored in the first database, if the wirelesslyreceived identification code matches one of the identification codesassociated in the first database with one of the one or more customerentrances in the brick-and-mortar outlet, comparing a wirelesslyreceived customer code with the plurality of customer codes stored inthe first or second database, and if the wirelessly received customercode matches the one of the plurality of customer codes associated inthe first or second database with the order code, controlling a displaymonitor at the one of the plurality of departments to display a firstnotification message and wirelessly transmitting, under control of thefirst processor, a second notification message to the mobilecommunication device identified by the contact information associated inthe first or second database with the matching one of the plurality ofcustomer codes, the first and second notification messages eachincluding information relating to at least one of the customeridentified by the matching one of the plurality of customer codes andthe order identified by the order code, and the second notificationmessage further including information relating to an identity of the oneof the plurality of departments.

In yet another aspect, a method of identifying customers with ordereditems at a retail enterprise may comprise associating, with a firstprocessor in a first database, each of a plurality of wireless signalbroadcasting devices within, near or adjacent to a brick-and-mortaroutlet of the retail enterprise with a different identification code,associating, with the first processor in the first or a second database,one of a plurality of customer codes identifying one of a plurality ofcustomers of the retail enterprise and an order code identifying anorder placed by the identified customer for an item to be delivered tothe identified customer by one of a plurality of departments within thebrick-and-mortar outlet, and in response to a wirelessly receivedidentification code and customer code, controlling, at least in partwith the first processor, a display monitor at one of the plurality ofdepartments to display a notification message if the wirelessly receivedidentification code matches the one of the plurality of identificationcodes associated in the first database with one of the plurality ofwireless signal broadcasting devices located at or near at least one ofan entrance to the brick-and-mortar outlet, the one of the plurality ofdepartments within the brick-and-mortar outlet and a curb-side, itemdelivery location near or adjacent to the brick-and-mortar outlet, andthe wirelessly received customer code matches the one of the pluralityof customer codes associated in the first or second database with theorder code, the notification message including information relating toat least one of the customer identified by the matching one of theplurality of customer codes and the order identified by the order code.

In still another aspect, a system for identifying customers with ordereditems at a retail enterprise may comprise a plurality of signalbroadcasting devices located in, near or adjacent to a brick-and-mortaroutlet of the retail enterprise, a display monitor located in one of theplurality of departments, at least one database having stored therein aplurality of identification codes each identifying a different one ofthe plurality of wireless signal broadcasting devices and eachassociated in the at least one database with a wireless signalbroadcasting device location corresponding to a location within, near oradjacent to the brick-and-mortar outlet of a different one of theplurality of wireless signal broadcasting devices, and a plurality ofcustomer codes each identifying a different one of a plurality ofcustomers of the retail enterprise, one of the plurality of customercodes associated in the at least one database with an order codeidentifying an order placed by a corresponding one of the plurality ofcustomers for an item to be delivered to the corresponding one of theplurality of customers by the one of the plurality of departments, aprocessor, and memory having instructions stored therein which, whenexecuted by the processor, cause the processor to control the displaymonitor, in response to a wirelessly received identification code andcustomer code, to display a notification message if the wirelesslyreceived identification code matches one of the plurality ofidentification codes stored in the at least one database and the signalbroadcasting device location associated in the at least one databasewith the matching one of the plurality of stored identification codescorresponds to an entrance to the brick-and-mortar outlet, the one ofthe plurality of departments or a curb-side, item delivery location nearor adjacent to the brick-and-mortar outlet, and the wirelessly receivedcustomer code matches the one of the plurality of customer codesassociated in the at least one database with the order code, thenotification message including information relating to at least one ofthe customer identified by the matching customer code and the orderidentified by the order code.

In a further aspect, a system for identifying customers with ordereditems at a retail enterprise may comprise a plurality of signalbroadcasting devices located in, near or adjacent to a brick-and-mortaroutlet of the retail enterprise, a display monitor located in one of theplurality of departments, at least one database having stored therein aplurality of identification codes each identifying a different one ofthe plurality of wireless signal broadcasting devices and eachassociated in the at least one database with a wireless signalbroadcasting device location corresponding to a location within, near oradjacent to the brick-and-mortar outlet of a different one of theplurality of wireless signal broadcasting devices, and a plurality ofcustomer codes each identifying a different one of a plurality ofcustomers of the retail enterprise, one of the plurality of customercodes associated in the at least one database with an order codeidentifying an order placed by a corresponding one of the plurality ofcustomers for an item to be delivered to the corresponding one of theplurality of customers by the one of the plurality of departments, and aserver coupled to each of the plurality of wireless signal broadcastingdevices and to the display monitor, the server including at least onemodule to control the display monitor, in response to a wirelesslyreceived identification code and customer code, to display anotification message if the wirelessly received identification codematches one of the plurality of identification codes stored in the atleast one database and the signal broadcasting device locationassociated in the at least one database with the matching one of theplurality of stored identification codes corresponds to an entrance tothe brick-and-mortar outlet, the one of the plurality of departments ora curb-side, item delivery location near or adjacent to thebrick-and-mortar outlet, and the wirelessly received customer codematches the one of the plurality of customer codes associated in the atleast one database with the order code, the notification messageincluding information relating to at least one of the customeridentified by the matching customer code and the order identified by theorder code.

In yet another aspect, a non-transitory machine-readable medium maycomprise a plurality of instructions which, when executed by at leastone processor, result in the at least one processor associating in afirst database each of a plurality of wireless signal broadcastingdevices within a brick-and-mortar outlet of the retail enterprise with adifferent identification code, associating in the first or a seconddatabase one of a plurality of customer codes identifying one of aplurality of customers of the retail enterprise and an order codeidentifying an order placed by the identified customer for an item to bedelivered to the identified customer by one of a plurality ofdepartments within the brick-and-mortar outlet, and in response to awirelessly received identification code and customer code, controlling adisplay monitor at one of the plurality of departments to display anotification message if the wirelessly received identification codematches the one of the plurality of identification codes associated inthe first database with one of the plurality of wireless signalbroadcasting devices located at or near at least one of an entrance tothe brick-and-mortar outlet, the one of the plurality of departments anda curb-side, item delivery location near or adjacent to thebrick-and-mortar outlet, and the wirelessly received customer codematches the one of the plurality of customer codes associated in thefirst or second database with the order code, the notification messageincluding information relating to at least one of the customeridentified by the matching one of the plurality of customer codes andthe order identified by the order code.

In still another aspect, a method of identifying customers with ordereditems at a retail enterprise may comprise, with communication circuitryof a mobile communication device located within a broadcast range of awireless signal broadcasting device located at or proximate to one of aplurality of departments in a brick-and-mortar outlet of the retailenterprise, detecting at least one of one or more wirelessidentification signals broadcast by the wireless signal broadcastingdevice, the one or more wireless identification signals each carrying anidentification code that uniquely identifies the wireless signalbroadcasting device and distinguishes the wireless signal broadcastingdevice from one or more other wireless signal broadcasting devices inthe brick-and-mortar outlet, under control of a first processor carriedby the mobile communication device, and in response to detection of theat least one of the one or more wireless signals broadcast by thewireless signal broadcasting device, automatically transmitting to atleast one of a server of the retail enterprise and a point-of-salesystem associated with the one of the plurality of departments awireless communication signal carrying at least the identification codecarried by the detected at least one of the one or more wirelessidentification signals, as part of the wireless communication signal orseparately from the wireless communication signal, wirelesstransmitting, under control of the first processor, a customer codestored in a memory of the mobile communication device, with at least asecond processor associated with the at least one of the server and thepoint-of-sale system associated with the one of the plurality ofdepartments, comparing the identification code carried by the wirelesscommunication signal with a plurality of identification codes stored inat least one database, each one of the plurality of storedidentification codes identifying a different wireless signalbroadcasting device located in the brick-and-mortar outlet, to identifythe one of the plurality of departments associated in the at least onedatabase with a corresponding one of the plurality of storedidentification codes that matches the identification code carried by theat least one wireless communication signal, with the at least a secondprocessor, comparing the customer code wirelessly transmitted by themobile communication device with a plurality of customer codes stored inat least one database, each of the plurality of stored customer codesassociated in the at least one database with a different one of aplurality of customers of the retail enterprise, to identify the one ofthe plurality of stored customer codes that matches the customer codewirelessly transmitted by the mobile communication device, with the atleast a second processor, locating an order code stored in at least onedatabase and associated in the at least one database with the matchingone of the plurality of stored customer codes, the located order codeidentifying an order placed by the customer identified by the matchingone of the plurality of stored customer codes for an item to bedelivered to the identified customer by the identified one of theplurality of departments, and controlling, with the at least a secondprocessor, a display monitor at the identified one of the plurality ofdepartments to display a notification message including informationrelating to at least one of the customer identified by the matching oneof the plurality of stored customer codes and the order identified bythe located order code.

In still a further aspect, a system for identifying customers withordered items at a retail enterprise may comprise a server associatedwith the retail enterprise, a plurality of departments each locatedwithin one of one or more brick-and-mortar outlets of the retailenterprise, a plurality of wireless signal broadcasting devices eachlocated at or near a different one of the plurality of departments, eachof the plurality of wireless signal broadcasting devices to broadcastwireless identification signals each carrying an identification codethat uniquely identifies the corresponding wireless signal broadcastingdevice and distinguishes the corresponding wireless signal broadcastingdevice from others of the plurality of wireless signal broadcastingdevices, at least one database having stored therein a plurality ofidentification codes each associated with a different one of theplurality of wireless signal broadcasting devices and each alsoassociated with a corresponding one of the plurality of departments ator near which the associated wireless signal broadcasting device islocated, a mobile communication device located within a broadcast rangeof one of the plurality of wireless signal broadcasting devices, themobile communication device including first communication circuitry todetect at least one of the wireless identification signals broadcast bythe one of the plurality of wireless signal broadcasting devices, themobile communication device including a first processor and a firstmemory having instructions stored therein which, when executed by thefirst processor, cause the first processor to automatically control thefirst communication circuitry to wirelessly transmit a wirelesscommunication signal in response to detection of the at least one of theone or more wireless identification signals broadcast by the one of theplurality of wireless signal broadcasting devices, the wirelesscommunication signal carrying the identification code carried by thedetected at least one of the one or more wireless identificationsignals, at least a second communication circuitry to receive thewireless communication signal transmitted by the first communicationcircuitry of the mobile communication device, at least a secondprocessor and a second memory having instructions stored therein which,when executed by the at least a second processor, cause the at least asecond processor to compare the identification code carried by thewireless communication signal with the plurality of identification codesstored in the at least one database to identify one of the plurality ofstored identification codes that matches the identification code carriedby the wireless communication signal and to identify the one of theplurality of departments associated in the at least one database withthe identified one of the plurality of stored identification codes, anda display monitor located in the one of the plurality of departments,the at least a second processor, the second memory and the at least asecond communication circuitry associated with at least one of theserver and a point-of-sale system associated with the identified one ofthe plurality of departments, the at least one database further havingstored therein a plurality of customer codes each associated with adifferent one of a plurality of customers of the retail enterprise, oneor more of the customer codes in the plurality of customer codes alsoassociated in the at least one database with at least one order code,the at least one order code associated with each of the one or morecustomer codes in the plurality of customer codes identifying at leastone order placed by a corresponding one of the plurality of customersfor at least one item to be delivered to the corresponding one of theplurality of customers by the identified one of the plurality ofdepartments, the instructions stored in the first memory of the mobilecommunication device further including instructions which, when executedby the first processor, cause the first processor to control the firstcommunication circuitry to wirelessly transmit, as part of the wirelesscommunication signal or separately from the wireless communicationsignal, a customer code stored in the first memory or in another memoryof the mobile communication device, the instructions stored in thesecond memory further including instructions which, when executed by theat least a second processor, cause the at least a second processor tocompare the customer code wirelessly transmitted by the firstcommunication circuitry and received by the at least a secondcommunication circuitry with the plurality of customer codes stored inthe at least one database to identify one of the plurality of storedcustomer codes that matches the customer code wirelessly transmitted bythe first communication circuitry, and to control the display monitor todisplay a notification message if the identified one of the plurality ofcustomer codes is one of the one or more of the customer codes in theplurality of customer codes associated in the at least one database withat least one order code, the notification message including informationrelating to at least one of the customer associated with the identifiedone of the plurality of stored customer codes and the at least one orderidentified by the at least one order code associated in the at least onedatabase with the identified one of the plurality of stored customercodes.

In yet a further aspect, a method of identifying customers with ordereditems at a retail enterprise may comprise associating, with a firstprocessor in a first database, each of one or more curb-side, itemdelivery locations in a drive-through, ordered item delivery areaadjacent to a brick-and-mortar outlet of the retail enterprise with adifferent identification code stored in the first database, associating,with the first processor in the first or a second database, one of aplurality of customer codes stored in the first or second database andidentifying one of a plurality of customers of the retail enterprisewith an order code identifying an order placed by the identifiedcustomer for an item to be delivered to the identified customer at thedrive-through, ordered item delivery area adjacent to thebrick-and-mortar outlet by an employee of a curb-side delivery servicedepartment in the brick-and-mortar outlet and also with contactinformation identifying a mobile communication device associated withthe identified customer, comparing, with the first processor, awirelessly received identification code with the identification codesstored in the first database, if the wirelessly received identificationcode matches one of the identification codes associated in the firstdatabase with one of the one or more curb-side, item delivery locationsadjacent to the brick-and-mortar outlet, comparing, with the firstprocessor, a wirelessly received customer code with the plurality ofcustomer codes stored in the first or second database, and if thewirelessly received customer code matches the one of the plurality ofcustomer codes associated in the first or second database with the ordercode, controlling, with the first processor, a display monitor at thecurb-side delivery service department to display a first notificationmessage, the first notification message including informationidentifying the order identified by the order code and the customer thatis associated with the matching one of the plurality of customer codesand that is presently located at the matching one of the one or morecurb-side, item delivery locations.

In still another aspect, a system for identifying customers with ordereditems at a retail enterprise may comprise at least one wireless signalbroadcasting devices located at or near a curb-side, item deliverylocation in a drive-through, ordered item delivery area adjacent to abrick-and-mortar outlet of the retail enterprise, at least one databasehaving stored therein at least one identification code identifying theat least one wireless signal broadcasting device and associated in theat least one database with the curb-side, item delivery location, and aplurality of customer codes each identifying a different one of aplurality of customers of the retail enterprise, one of the plurality ofcustomer codes associated in the at least one database with an ordercode identifying an order placed by one of the customers identified bythe one of the plurality of customer codes for at least one item to bedelivered to the identified customer at the drive-through, ordered itemdelivery area adjacent to the brick-and-mortar outlet by an employee ofa curb-side delivery service department in the brick-and-mortar outletwithin the brick-and-mortar outlet and also with contact informationidentifying a mobile communication device associated with the identifiedcustomer, a display monitor located in the curb-side delivery servicedepartment, a processor, and memory having instructions stored thereinwhich, when executed by the processor, cause the processor to compare awirelessly received identification code with the at least oneidentification code stored in the at least one database, to compare awirelessly received customer code with the plurality of customer codesstored in the database if the wirelessly received identification codematches the at least one identification code stored in the at least onedatabase, and, if the wirelessly received customer code matches the oneof the plurality of customer codes associated in the at least onedatabase with the order code, to control a display monitor at thecurb-side delivery service department to display a first notificationmessage, the first notification message including informationidentifying the order identified by the order code associated in the atleast one database with the one of the plurality of customer codes, andinformation identifying the customer that is associated with the one ofthe plurality of customer codes and that is presently located at thecurb-side, item delivery location associated in the at least onedatabase with the at least one identification code.

In yet a further aspect, a non-transitory machine-readable medium maycomprise a plurality of instructions which, when executed by at leastone processor, result in the at least one processor associating in afirst database each of one or more curb-side, item delivery locations ina drive-through, ordered item delivery area adjacent to abrick-and-mortar outlet of the retail enterprise with a differentidentification code stored in the first database, associating in thefirst or a second database, one of a plurality of customer codes storedin the first or second database and identifying one of a plurality ofcustomers of the retail enterprise with an order code identifying anorder placed by the identified customer for an item to be delivered tothe identified customer at the drive-through, ordered item delivery areaadjacent to the brick-and-mortar outlet by an employee of a curb-sidedelivery service department in the brick-and-mortar outlet and also withcontact information identifying a mobile communication device associatedwith the identified customer, comparing a wirelessly receivedidentification code with the identification codes stored in the firstdatabase, if the wirelessly received identification code matches one ofthe identification codes associated in the first database with one ofthe one or more curb-side, item delivery locations adjacent to thebrick-and-mortar outlet, comparing a wirelessly received customer codewith the plurality of customer codes stored in the first or seconddatabase, and if the wirelessly received customer code matches the oneof the plurality of customer codes associated in the first or seconddatabase with the order code, controlling a display monitor at thecurb-side delivery service department to display a first notificationmessage, the first notification message including informationidentifying the order identified by the order code and the customer thatis associated with the matching one of the plurality of customer codesand that is presently located at the matching one of the one or morecurb-side, item delivery locations.

BRIEF DESCRIPTION OF THE DRAWINGS

This disclosure is illustrated by way of example and not by way oflimitation in the accompanying figures. Where considered appropriate,reference labels have been repeated among the figures to indicatecorresponding or analogous elements.

FIG. 1 is a simplified block diagram of an embodiment of a system foridentifying customers with ordered items at a retail enterprise.

FIG. 2 is a simplified block diagram of an embodiment of one of thepoint-of-sale systems illustrated in FIG. 1.

FIG. 3A is a simplified block diagram of an embodiment of one of themobile communication devices illustrated in FIG. 1.

FIG. 3B is a simplified block diagram of an embodiment of one of theuser computing devices illustrated in FIG. 1.

FIG. 4 is a simplified block diagram of an embodiment of one of theproduct/service departments illustrated in FIG. 1.

FIG. 5 is a simplified block diagram of an embodiment of a softwareenvironment of the main server of FIG. 1.

FIG. 6 is a simplified diagram illustrating an embodiment of acommunications framework for detecting by a mobile communication deviceof wireless signals produced by one or more wireless signal broadcastingdevices within a brick-and-mortar store and for conducting wirelesscommunications relating thereto between the mobile communication deviceand the main server of the retail enterprise.

FIG. 7 is a simplified flow diagram of an embodiment of a process foridentifying customers at brick-and-mortar stores of the retailenterprise that have one or more pending orders for one or more items.

FIG. 8 is a simplified flow diagram of an embodiment of the storeentrance process executed as part of the process illustrated in the flowdiagram of FIG. 7.

FIG. 9 is a simplified flow diagram of an embodiment of theproduct/service department monitoring process executed as part of theprocess illustrated in the flow diagram of FIG. 7.

FIG. 10 is a simplified block diagram of the system of FIG. 1implemented in the form of a curb-side delivery service at one or moreof the brick-and-mortar stores of a retail enterprise.

FIG. 11 is a simplified flow diagram of another embodiment of a processfor identifying customers at brick-and-mortar stores of the retailenterprise that have one or more pending orders for one or more items.

FIG. 12 is a simplified flow diagram of an embodiment of the curb-sidedelivery executed as part of the process illustrated in the flow diagramof FIG. 7.

FIG. 13 is a simplified flow diagram of an embodiment of the lanetraffic process executed as part of the process illustrated in FIG. 12.

FIG. 14 is a simplified bock diagram of an embodiment of the producescale illustrated in FIG. 2.

FIG. 15 is a simplified flow diagram of an embodiment of an aspect of aproduct fulfillment process.

FIG. 16 is a simplified flow diagram of an embodiment of another aspectof the product fulfillment process.

FIG. 17 is a simplified flow diagram of an embodiment of yet anotheraspect of the product fulfillment process.

DETAILED DESCRIPTION OF THE DRAWINGS

While the concepts of the present disclosure are susceptible to variousmodifications and alternative forms, specific exemplary embodimentsthereof have been shown by way of example in the drawings and willherein be described in detail. It should be understood, however, thatthere is no intent to limit the concepts of the present disclosure tothe particular forms disclosed, but on the contrary, the intention is tocover all modifications, equivalents, and alternatives consistent withthe present disclosure and the appended claims.

References in the specification to “one embodiment”, “an embodiment”,“an example embodiment”, etc., indicate that the embodiment describedmay include a particular feature, structure, or characteristic, butevery embodiment may not necessarily include the particular feature,structure, or characteristic. Moreover, such phrases may or may notnecessarily refer to the same embodiment. Further, when a particularfeature, structure, process, process step or characteristic is describedin connection with an embodiment, it is submitted that it is within theknowledge of one skilled in the art to effect such feature, structure,process, process step or characteristic in connection with otherembodiments whether or not explicitly described. Further still, it iscontemplated that any single feature, structure, process, process stepor characteristic disclosed herein may be combined with any one or moreother disclosed feature, structure, process, process step orcharacteristic, whether or not explicitly described, and that nolimitations on the types and/or number of such combinations shouldtherefore be inferred.

Embodiments of the invention may be implemented in hardware, firmware,software, or any combination thereof. Embodiments of the inventionimplemented in a computer system may include one or more bus-basedinterconnects between components and/or one or more point-to-pointinterconnects between components. Embodiments of the invention may alsobe implemented as instructions stored on one or more machine-readablemedia, which may be read and executed by one or more processors. Amachine-readable medium may be embodied as any device or physicalstructure for storing or transmitting information in a form readable bya machine (e.g., a computing device). For example, a machine-readablemedium may be embodied as any one or combination of read only memory(ROM); random access memory (RAM); magnetic disk storage media; opticalstorage media; flash memory devices; and others.

Referring now to FIG. 1, a system 10 is shown for identifying customerswith ordered items at a retail enterprise. The system 10 includes aretail enterprise 11 having a main server 12 configured to communicatewith shoppers via a public network 14, e.g., the Internet, and shoppersmay access the public network 14 using any conventional public networkaccessible electronic device and/or system. In the illustratedembodiment, for example a number, J, of mobile communication devices 16₁-16 _(J), and a number, K, of user computing devices 18 ₁-18 _(K), areshown. Each is configured to communicatively connect to the publicnetwork 14, and J and K may each be any positive integer. The retailenterprise 11 may include any number of brick-and-mortar retail outletseach having one or more point-of-sale systems 24 ₁-24 _(M), 24 ₁-24 _(N)operating therein. The main server 12 is configured to communicate witheach such point-of-sale (POS) system 24 ₁-24 _(M), 24 ₁-24 _(N), each ofwhich operate in a conventional manner to process items to be purchasedby shoppers during purchase transactions.

Each of the brick-and-mortar stores 25 may further include at least oneconventional WiFi Access Point 30 which may be coupled to thecorresponding local hub server 22, or directly to the main server 12 inany one or more of the brick-and-mortar stores 25 not having anassociated local hub server 22. Each such WiFi Access Point 30 isillustratively controlled by the main server 12 (or corresponding localhub server 22) in a conventional manner to establish at least onecorresponding Internet hotspot within the brick-and-mortar store 25 viawhich customers (and employees) can access the public network 14, e.g.,to access the Internet, using any conventional public network accessibleelectronic device and/or system, e.g., such as with any of the pluralityof mobile communication devices 16 ₁-16 _(K).

In some embodiments, the main server 12 illustratively hosts anenterprise member or membership services (EMS) program which includes orotherwise has access to a virtual coupon bank and a customer purchasehistory database containing purchase histories of one or more customersof the retail enterprise 11. As used herein, the terms “enterprisemember services program,” “EMS program” and “customer membershipservice” are interchangeable and refer to a shopper or customer servicewhich a retail enterprise 11 may offer to customer members in the formof one or more services such as making available to customers one ormore virtual discount coupons that may be redeemable by the retailenterprise against the purchase of from the retail enterprise of variousgoods and/or services and/or tracking and maintaining customer purchasehistories in a customer purchase history database accessible by the mainserver 12. In this regard, the terms “customer membership account” and“EMS account” are likewise interchangeable and refer to a mechanism bywhich the retail enterprise 11 may make available to customers one ormore virtual discount coupons and/or by which a customer's purchasehistory and information about the customer can be maintained by the mainserver 12 in a database separately from purchase histories of andinformation about other customers. Further in this regard, the term “EMSidentification code” or EMSID illustratively refers to at least onecollection of letters, symbols and/or numbers that is different for, andtherefore unique to, each customer member of the enterprise membershipservices program, and which is used to uniquely identify a customer'sEMS account within the enterprise membership services program. In oneembodiment, for example, the EMSID for each customer may include aunique, several-digit access code and a separate and unique,several-digit password, although in other embodiments the EMSID mayinclude more, fewer and/or different codes and/or passwords.

The main server 12 illustratively includes an EMS module that managesand controls a customer-member interface, e.g., a web-based interface,to the EMS program via which customers can access and manage theirindividual EMS accounts. Illustratively, each customer may access theirindividual (and private from other customer-members) EMS account, i.e.,their individual EMS page(s) within the web-based EMS interface, whichmay be referred to hereinafter as an “EMS website,” by entering thatcustomer's EMSID into a graphic user interface element of the web-basedEMS interface. Therein, the customer may access, establish, modify andotherwise manage the customer's EMS account information including, forexample, but not limited to, name, address, email address, mobiletelephone number and the like.

In the embodiment illustrated in FIG. 1, the main server 12 is coupledvia a private network 20 to a plurality of local hub servers 22 ₁-22_(L), where L may be any positive integer, and each local hub server 22₁-22 _(L) is coupled to one or more conventional point-of-sale systems,e.g., 24 ₁-24 _(M). Each of the point-of-sale systems 24 ₁-24 _(M) islocated in a different one of one or more brick-and-mortar stores of theretail enterprise 11, and is configured to process items selected bycustomers for purchase at a corresponding brick-and-mortar store. Whileonly one such brick-and-mortar store 25 ₁ is shown in FIG. 1, it will beunderstood that each of the local hub servers 22 ₁-22 _(L) may becoupled to a different brick-and-mortar store, each as illustrated withrespect to the brick-and-mortar store 25 ₁, such that the retailenterprise 11 may include any number, L, of brick-and-mortar stores 25₁-25 _(L). Some retail enterprises 11 may include a single brick andmortar store, and other larger enterprises may include two or morephysically remote brick and mortar stores. In the latter case, theretail enterprise 11 may include, for example, a main physical locationwith two or more remote physical locations, and for purposes of thisdocument the two or remote physical locations in such an arrangement arereferred to as “hub” locations. In this disclosure, the system 10 willbe illustrated and described in the context of such a larger retailenterprise having a main physical location and two or more physical hublocations. In this regard, the main server 12 in the system 10 shown inFIG. 1 will typically be located at a main business location of theretail enterprise, and will be coupled via the network 20 to two or morelocal hub servers 22 ₁-22 _(L), each of which will typically be locatedat a different one of the two or more hub locations.

Each hub location may include any number of point-of-sale systemscoupled to a corresponding local hub server, and in the embodimentillustrated in FIG. 1, for example, the local hub server 22 ₁ iscommunicatively coupled to “M” such point-of-sale systems 24 ₁-24 _(M),where M may be any positive integer. Communicative coupling between thelocal hub server 22 ₁ and the one or more point-of-sale systems 24 ₁-24_(M) may be accomplished using any known communication coupling, andcommunications over any such hardwire and/or wireless coupling may beaccomplished using any known communication protocol.

In some alternative embodiments of such a large retail enterprise, oneor more of the local hub servers 22 ₁-22 _(L) may be omitted, and themain server 12 may be coupled directly, via the network 20, to one ormore point-of-sale systems 24 ₁-24 _(M) or the main server 12 may beomitted and at least one of the local hub servers 22 ₁-22 _(L) may beconfigured to act as a so-called master server with the remaining localhub servers 22 ₁-22 _(L) configured to act as so-called slave servers.In other alternative embodiments in which the retail enterprise includesonly a single brick and mortar store, the local hub servers 22 ₁-22 _(L)may be or include the main server 12 or vice versa. For purposes of thefollowing description, any process disclosed as being controlled by themain server 12 may, in some embodiments, instead be controlled, in wholeor in part, by one or more local hub servers 22 ₁-22 _(L) and viceversa, and/or may be controlled, in whole or in part, by one of thepoint-of-sale systems 24 ₁-24 _(M) and vice versa.

The local hub server 22 ₁ may be embodied as any type of server orsimilar computing device capable of performing the functions describedherein. In the illustrative embodiment of FIG. 1, the local hub server22 ₁ includes a processor 32, an I/O subsystem 34, a memory 36, a datastorage 38, a communication circuitry 40, and one or more peripheraldevices 42. It should be appreciated that the local hub server 22 ₁ mayinclude other components, sub-components, and devices commonly found ina server and/or computing device, which are not illustrated in FIG. 1for clarity of the description.

The processor 32 of the local hub server 22 ₁ may be embodied as anytype of processor capable of executing software/firmware, such as amicroprocessor, digital signal processor, microcontroller, or the like.The processor 32 may be a single processor or include multipleprocessors. The I/O subsystem 32 of the local hub server 22 ₁ may beembodied as circuitry and/or components to facilitate input/outputoperations with the processor 32 and/or other components of the localhub server 22 ₁. The processor 32 is communicatively coupled to the I/Osubsystem 34.

The memory 36 of the user local hub server 104 may be embodied as orotherwise include one or more conventional volatile and/or non-volatilememory devices. The memory 36 is communicatively coupled to the I/Osubsystem 34 via a number of signal paths. Although only a single memorydevice 34 is illustrated in FIG. 1, the local hub server 22 ₁ mayinclude additional memory devices in other embodiments. Various data andsoftware may be stored in the memory 36 The data storage 38 is alsocommunicatively coupled to the I/O subsystem 34 via a number of signalpaths, and may be embodied as any type of device or devices configuredfor the short-term or long-term storage of data such as, for example,memory devices and circuits, memory cards, hard disk drives, solid-statedrives, or other data storage devices.

The communication circuitry 40 of the local hub server 22 ₁ may includeany number of devices and circuitry for enabling communications betweenthe local hub sever 22 ₁ and the main server 12 and between the localhub server 22 ₁ and the one or more point-of-sale systems 24 ₁-24 _(M).In the illustrated embodiment, for example, communication between thelocal hub server 22 ₁ and the main server 12 takes place wirelessly viathe network 20, wherein the network 20 may represent, for example, aprivate local area network (LAN), personal area network (PAN), storagearea network (SAN), backbone network, global area network (GAN), widearea network (WAN), or collection of any such computer networks such asan intranet, extranet or the Internet (i.e., a global system ofinterconnected network upon which various applications or service runincluding, for example, the World Wide Web). In alternative embodiments,the communication path between the local hub server 22 ₁ and the mainserver 12 may be a non-private network and/or may be, in whole or inpart, a wired connection. Generally, the communication circuitry 40 maybe configured to use any one or more, or combination, of conventionalsecure and/or unsecure communication protocols to communicate with themain server 12. As such, the network 20 may include any number ofadditional devices, such as additional computers, routers, and switches,to facilitate communications between the local hub server 22 ₁ and themain server 12. Communication between the local hub server 22 ₁ and theone or more point-of-sale systems 24 ₁-24 _(M) may take place via one ormore such wireless communication interfaces and/or via one or moreconventional wired interfaces.

In some embodiments, the local hub server 22 ₁ may also include one ormore peripheral devices 42. Such peripheral devices 40 may include anynumber of additional input/output devices, interface devices, and/orother peripheral devices. For example, the peripheral devices 42 mayinclude a display, a keyboard, a mouse, audio processing circuitry,and/or other input/output devices.

The local hub server 22 _(L) may be substantially similar to the localhub server 22 ₁ and include similar components. As such, the descriptionprovided above of the components of the local hub server 22 ₁ may beequally applicable to such similar components of the local hub server 22_(L) and are not repeated herein so as not to obscure the presentdisclosure. Of course, it should be appreciated that in some embodimentsone or more of the local hub servers 22 ₁-22 _(L) and may be dissimilarto others of the local hub servers 22 ₁-22 _(L).

An embodiment of the main server 12 is also illustrated in FIG. 1, andgenerally includes the same components as the local hub server 22 ₁. Forexample, a processor 50 is coupled to an I/O subsystem 52, and the I/Osubsystem 52 is coupled to a memory 54, a data storage unit 56,communication circuitry 58 and one or more peripheral devices 60. Insome embodiments, each of the foregoing components may be identical tocorresponding components of the local hub server 22 ₁ described above,and a detailed explanation of such components will not be repeated herefor brevity. In other embodiments, the main server 12 may be configureddifferently than the local hub server 22 ₁ described above. In any case,the communication circuitry 38 of each of the local hub servers 22 ₁-22_(L) facilitates communication with the communication circuitry 58 ofthe main server 12 and vice versa so that information can be sharedbetween the main server 12 and each of the one or more local hub servers22 ₁-22 _(L) via the network 20. Although only one such main server 12is shown in FIG. 1, it should be appreciated that, in other embodiments,the system 10 may include any number of shopper main servers, and instill other embodiments the main server 12 may be communicativelycoupled to one or more remote servers of the retail enterprise. In suchembodiments, the one or more remote servers may include any structure orfeature illustrated and described herein with respect to the main server12, and may be configured to execute any one or more functions describedwith respect to the main server 12 either alternatively to the mainserver 12 or in addition to the main server 12. In any case, the mainserver 12 may be embodied as any type of server or similar computingdevice capable of performing the functions described herein.

The mobile communication devices 16 ₁-16 _(J) illustrated in FIG. 1 areintended to depict mobile communication devices that are each separatelyowned and/or operated by a different shopper. No limit on the totalnumber of such mobile communication devices 16 ₁-16 _(J) that may beowned and operated by any one shopper, or on the total number of suchmobile communication devices 16 ₁-16 _(J) that may communicate with themain server 12, is intended or should be inferred. The mobilecommunication devices 16 ₁-16 _(J) may be or include any mobileelectronic device capable of executing one or more software applicationprograms as described herein and of communicating with the main server12 via the public network 14. Examples of the mobile communicationdevices 16 ₁-16 _(J) include, but should not be limited to, mobiletelephones, smart phones, tablet computers, personal data assistants(PDAs), and the like.

The user computing devices 18 ₁-18 _(L) illustrated in FIG. 1 areintended to include any of privately owned and accessed computers, suchas those residing in customer's residences, to include semi-privatelyowned and accessed computers, such as those residing atmultiple-employee business enterprises, and publicly accessiblecomputers, such as those available at internet café s and kiosks. Theuser computing devices 18 ₁-18 _(L) may be or include any computercapable of executing one or more software programs and of communicatingwith the main server 12 via the public network 14 for various purposesincluding, for example, accessing by customers of their EMS web page(s).Examples of the user computing devices 18 ₁-18 _(L) include, but shouldnot be limited to, personal computers (PCs), laptop computers, notebookcomputers and the like, whether or not networked with one or more othercomputing devices.

Also depicted in FIG. 1 are a number of product/service departments 26₁-26 _(N) each illustratively coupled to the local hub server 22 in adifferent one of the brick-and-mortar enterprise locations 25 ₁-25 _(L)such that each brick-and-mortar enterprise location includes a one ormore such product/service departments 26 ₁-26 _(N). In alternateembodiments, one or more or all of the product/service departments 26₁-26 _(N) may not be coupled to the local hub server 22 but may insteadbe coupled directly, e.g., via the private network 20, to the mainserver 12. The product/service departments 26 ₁-26 _(N) eachillustratively comprise a separate department within eachbrick-and-mortar store, and each such product/service departmentillustratively offers a particular product or service, or a particularset of products or services, typically not offered by any otherdepartment within the same brick-and-mortar store. Examples of suchproduct/service departments include, but are not limited to, a bakery, apharmacy, a meat department, seafood department, a dairy department, aproduce department, a beverage department, a frozen food department, aphotograph developing service department, an electronics department, asporting goods department, a nursery, a seasonal goods department, aclothing department, a shoe department, a pet food and/or accessorydepartment, an automotive goods department, and kitchenware department,a hardware department, and the like. One or more of the product/servicedepartments 26 ₁-26 _(N) illustratively include an electronic system ordevice located therein or otherwise associated therewith. An embodimentof such an electronic system or device located in, at, near or otherwiseassociated with any of the product/service departments is illustrated inFIG. 4 and will be described in detail hereinafter. Each product/servicedepartment 26 ₁-26 _(N) prepares, procures, purchases, stocks orotherwise makes available to and delivers to customers one or moreproducts and/or services that is/are typically unique to thatproduct/service department.

Also depicted in FIG. 1 are a number of conventional positionidentification devices (PIDs) 28 ₁-28 _(P) each illustratively coupledto the local hub server 22 in a different one of the brick-and-mortarenterprise locations 25 such that each brick-and-mortar enterpriselocation includes a plurality of such position identification devices 28₁-28 _(P). In alternate embodiments, one or more or all of the PIDs 28₁-28 _(P) may not be coupled to the local hub server 22. In oneembodiment, the position identification devices 28 ₁-28 _(P) areprovided in the form of conventional electronic wireless signalbroadcasting devices 224, e.g., conventional radio frequencybroadcasting beacons, for the purpose of broadcasting radio signalscarrying information corresponding to the location and/or identitythereof, and will be described in the remainder of this document assuch. It will be understood, however, that this disclosure contemplatesother embodiments in which one or more of the position identificationdevices 28 ₁-28 _(P) is/are provided in another form. Examples of suchother forms will be described at the end of this document.

Illustratively, the PIDs 28 ₁-28 _(P) in each of the plurality ofbrick-and-mortar stores 25 ₁-25 _(L) may be positioned at variouslocations within the brick-and-mortar store. At least one of thewireless signal broadcasting devices 28 ₁-28 _(P) is illustrativelylocated at, near, or adjacent to at least one customer entrance to thebrick-and-mortar store, e.g., such that each such wireless signalbroadcasting device 28 ₁-28 _(P) is associated with, and thereforeidentifies, a corresponding customer entrance to the brick-and-mortarstore. In any case, each such wireless signal broadcasting device 28₁-28 _(P) is illustratively configured to periodically broadcast one ormore unique wireless identification signals, i.e., one or moreidentification signals that distinguish the particular wireless signalbroadcasting device 28 from other wireless signal broadcasting devices28 ₁-28 _(P).

In some embodiments, the wireless signal broadcasting devices 28 ₁-28_(P) are each configured to periodically broadcast wirelessidentification signals in the radio frequency (RF) range, although anyof the one or more wireless signal broadcasting devices 28 ₁-28 _(P) maybe configured to alternatively broadcast wireless identification signalsin one or more other frequency ranges. In any case, the wireless signalbroadcasting devices 28 ₁-28 _(P) are further each illustrativelyconfigured to broadcast wireless identification signals with apredefined broadcast range and/or orientation (i.e., direction) as willbe described in greater detail hereinafter. Illustratively, the uniquewireless identification signals broadcast by each wireless signalbroadcasting devices 28 ₁-28 _(P) carry decodable information in theform of a unique identification code (UID). Generally, the UID of eachwireless signal broadcasting device 28 ₁-28 _(P) uniquely identifiesthat wireless signal broadcasting device and distinguishes that wirelesssignal broadcasting device from all other wireless signal broadcastingdevices within the retail enterprise 11 or at least those located in anyone brick-and-mortar store 25. Those skilled in the art will recognizeadditional and/or alternative information that may be included within orappended to the UID, and/or carried by the unique wirelessidentification signals broadcast by the wireless signal broadcastingdevices 28 ₁-28 _(P), and it will be understood that any such additionaland/or alternative information is contemplated by this disclosure.

Referring now to FIG. 2, an embodiment 24 of one of the one or morepoint-of-sale systems, 24 ₁-24 _(M) is shown which includes componentssimilar to the main server 12 and also to the one or more local hubservers 22 ₁-22 _(L), such as a processor 200, an I/O subsystem 204, amemory 202, a data storage device 206, communication circuitry 210 and anumber of peripheral devices 212. In some embodiments, each of theforegoing components may be identical to corresponding components of thelocal hub server 22 ₁ described above, and a detailed explanation ofsuch components will not be repeated here for brevity. In otherembodiments, any of the one or more point-of-sale systems 24 ₁-24 _(M)may be configured differently than the local hub server 22 ₁ describedabove. In the illustrated embodiment, the memory 202 illustrativelyincludes an EMS module 208 in the form of, e.g., instructions executableby the processor 200, to communicate customer-member informationrelating to the customer's EMS account to and from the main server 12,and to control one or more local peripheral devices to facilitatecommunications between customer-members of the enterprise membershipservice (EMS) program and the main server 12 and to facilitate manualcustomer input of customer-identifying information, e.g., an EMSidentifying number and/or code (EMSID).

Additionally, the illustrated point-of-sale system 24 includes one ormore actuators 226 and hardware infrastructure 228, examples of whichwill be described below. It will be appreciated that the point-of-salesystem 24 may include other components, sub-components, and devicescommonly found in a computer and/or computing device. In any case, thecommunication circuitry 210 is configured to facilitate communicationwith a corresponding one of the local hub servers 22 ₁-22 _(L) and thepoint-of-sale system 24 may use any suitable communication protocol tocommunicate with the corresponding local hub server 22 ₁-22 _(L).

In addition to, or alternatively to, the number of peripheral devices 40of the local hub server 22 ₁ described above, the number of peripheraldevices 212 of the point-of-sale system 24 may include any number ofother peripheral or interface devices. Examples of some of theperipheral devices 212 illustrated in FIG. 2 include, but should not belimited to, one or more conventional payment interfaces 214, one or moreconventional item price scanners 216, one or more conventional displaymonitors 218, one or more conventional produce scales 220, and one ormore conventional controllers 224 for controlling one or moreconventional actuators 226 associated with the operation of thepoint-of-sale system 24. The one or more payment interfaces 214 areprovided, e.g., to facilitate physical receipt of credit/debit cardand/or other form of payment from customers (shoppers), and each suchinterface 214 may illustratively include one or more of a display, atouch screen, a keyboard, a mouse, external speakers, and/or otherperipheral devices. One or more of the payment interfaces 214 mayfurther include a produce scale 220, and one or more produce scales 220may alternatively be coupled to the point-of-sale system 24 separatelyfrom the one or more customer payment interfaces 214. The one or moreitem scanner(s) 216 is/are configured to scan price code labels or othersuch indicators for items being purchased by customers and to also scanprint media coupons.

The one or more display monitor(s) 218 provide item and/or pricinginformation to customers and/or enterprise employees, and may furtherprovide additional information regarding cost and/or discounts for oneor more items being purchased as well as information regarding discountsrealized by customers through the use of print media and/or virtualcoupons. The display monitor(s) 218 may additionally provide aninterface, e.g., touchscreen or a co-located keypad, via which customersmay input information such as their EMSID into the system 10.

The peripheral devices 212 of the point-of-sale system 24 may furtheroptionally include a near-field communication interface 222, asillustrated in dashed-line configuration in FIG. 2, which may beincluded in embodiments in which one or more of the mobile communicationdevices 16 ₁-16 _(J) also has such a near-field communication devicesuch that customer information, e.g., customer identificationinformation such as EMSIDs, user names, passwords, or the like, and/orcustomer payment information, e.g., credit/debit card information or thelike, can be transferred from such one or more of the mobilecommunication devices 16 ₁-16 _(J) to the point-of-sale system 24 bytapping the two near-field communication devices together or by passingthe near-field communication device of a so-equipped mobilecommunication device 16 ₁-16 _(J) sufficiently close to the near-fieldcommunication device 222 to effectuate such communication.Illustratively, customers may additionally transfer customeridentification information to the point-of-sale system 24 via thepayment interface 214, item scanner 216 or other peripheral device(s).

The point-of-sale system 24 further includes hardware infrastructure 228which forms the structural backbone of the point-of-sale system 24.Examples of structural components that may be included in the hardwareinfrastructure 228 include, but should not be limited to, one or morepurchased item transport units, e.g., one or more purchased itemconveyance units or systems, one or more conventional purchased itembagging areas, e.g., one or more conventional item bagging carousals,one or more purchased item support units, and the like. The one or moreactuators 226 may be or include any actuator that is controllable by atleast one of the one or more conventional controllers 224, and which mayfacilitate operation and/or control of the hardware infrastructure ofthe point-of-sale system 24. Examples of such one or more actuators mayinclude, but should not be limited to, one or more linear and/orrotational drive motors, one or more electronically controlled switches,and the like.

Referring now to FIG. 3A, an embodiment of one of the mobilecommunication devices 16 illustrated in FIG. 1 (and/or of one of themobile communication devices 1010 and/or 1012 illustrated in FIG. 10) isshown, which includes components similar to the main server 12 and alsoto the one or more local hub servers 22 ₁-22 _(L) and the one or morePOS systems 24 ₁-24 _(M) such as a processor 300, an I/O subsystem 302,a memory 304 including an EMS module 308, a data storage device 306,communication circuitry 312 and a number of peripheral devices 314. Insome embodiments, each of the foregoing components may be identical tocorresponding components of the local hub server 22 ₁ and/or POS system24 described above, and a detailed explanation of such components willnot be repeated here for brevity. In other embodiments, any of the oneor more mobile communication devices 16 ₁-16 _(J) may be configureddifferently than the local hub server 22 ₁ described above. It will beappreciated that the mobile communication device 16 may include othercomponents, sub-components, and devices commonly found in a computerand/or computing device.

The memory 304 illustratively includes an EMS module 308 in the form of,e.g., instructions executable by the processor 300 to communicatecustomer-member information to and from the main server 12, and tocontrol one or more local peripheral devices to facilitatecommunications between customer-members of the enterprise membershipservice (EMS) program and the main server 12 and to facilitate customerinput of customer-identifying information, e.g., an EMS identifyingnumber and/or code (EMSID). The memory 304 further illustrativelyincludes an ordered item (OI) application 310 in the form of, e.g.,instructions executable by the processor 300 to facilitateidentification by the processor 50 of the main server 12 of customermobile devices 16 ₁-16 _(J) and store entrances and/or product/servicedepartments at the one or more brick-and-mortar stores 25 ₁-25 _(L). Anexample embodiment of the OI application 310 will be described ingreater detail hereinafter with respect to FIG. 7.

The communication circuitry 312 illustratively includes conventionalwireless communication circuitry 312. In some embodiments, the wirelesscommunication circuitry 312 is configured to conduct and facilitatecellular telephone communications with other cellular and land-basedcommunication devices. In some embodiments, the wireless communicationcircuitry 312 is configured to conduct and facilitate communication withthe main server 12 via the network 14. In some embodiments, the wirelesscommunication circuitry 312 is configured to access the network 14 viaat least one hotspot established in any of the brick-and-mortar stores25 ₁-25 _(L) by a corresponding at least one WiFi Access Point 30. Insome embodiments, the wireless communication circuitry 312 may furtherbe configured to conduct and facilitate communication with one or moreof the position identification devices 28 ₁-28 _(P) in any of thebrick-and-mortar stores 25 ₁-25 _(L). The wireless communicationcircuitry 312 may illustratively include conventional communicationcircuitry for conducting and facilitating any such communication, andexamples of such conventional communication circuitry include, but arenot limited to, one or more conventional radio frequency (RF)transceivers configured to receive and transmit signals at multipleradio frequencies, one or more conventional modem or other communicationcircuits configured to access and conduct communications via theInternet, and the like. The mobile communication device 16 mayillustratively use any suitable communication protocol via the network14 or other network to communicate with the main server 12, with othercellular and land-based communication devices and/or with one or more ofthe position identification devices 28 ₁-28 _(P) in any of thebrick-and-mortar stores 25 ₁-25 _(L).

The communication circuitry 312 of the mobile communication device 16may further optionally include conventional contact-less communicationcircuitry 318, which may include a conventional near-field communicationdevice 320, as illustrated by dashed-line representation in FIG. 3A. Thenear-field communication device 320 may be included, for example, inembodiments in which one or more of the point-of-sale systems 24 ₁-24_(M) also has/have a near-field communication interface 222 such thatcustomer information, e.g., customer identification information in theform of one or more identification codes (e.g., EMSID), user names,passwords, or the like, and/or customer payment information, e.g.,credit/debit card information or the like, can be transferred from themobile communication device 16 to such one or more point-of-sale systems24 ₁-24 _(M) by tapping the two near-field communication devicestogether or by passing the near-field communication device 320 of themobile communication device 16 sufficiently close to the near-fieldcommunication interface 222 to effectuate such communication. Inaddition to, or alternatively to, the number of peripheral devices 40 ofthe local hub server 22 ₁ described above, the number of peripheraldevices 314 of the mobile communication device 16 may include any numberof other or additional peripheral or interface devices. Examples of suchadditional peripheral devices illustrated in FIG. 3A include, but shouldnot be limited to, a conventional visual display unit or screen 322, aconventional global positioning system (GPS) receiver 324, aconventional camera 332, a conventional keypad 326, a conventionalmicrophone 328 and a conventional magnetometer 330. The display 322 isconfigured, in a conventional manner, to be responsive to instructionsproduced by the processor 300 to display information thereon. The GPSreceiver 324 is configured, in a conventional manner, to receiveradio-frequency signals transmitted by earth-orbiting satellites and toproduce corresponding signals from which geographical coordinates of thereceiver 324 are or can be determined. The camera 332 is configured, ina conventional manner, to capture images and/or video and to display thesame on the display 322. The keypad 326 is configured, in a conventionalmanner, to provide signals corresponding to manual selection andactivation thereof to the processor 300, and the microphone 328 isconfigured, in a conventional manner, to capture sound waves and toprovide signals corresponding thereto to the processor 300. Themagnetometer 330 is configured, in a conventional manner, to detectlocal geomagnetic fields, to produce magnetic signature signals basedthereon and to provide such signals to the processor 300.

Referring now to FIG. 3B, an embodiment of one of the user computingdevices 18 illustrated in FIG. 1 is shown, which includes componentssimilar to the main server 12 and also to the one or more local hubservers 22 ₁-22 _(L) and the one or more POS systems 24 ₁-24 _(M) suchas a processor 350, an I/O subsystem 352, a memory 354 including an EMSmodule 358, a data storage device 356, communication circuitry 360 and anumber of peripheral devices 366. In some embodiments, each of theforegoing components may be identical to corresponding components of thelocal hub server 22 ₁ and/or POS system 24 described above, and adetailed explanation of such components will not be repeated here forbrevity. In other embodiments, any of the one or more user computingdevices 18 ₁-18 _(K) may be configured differently than the local hubserver 22 ₁ described above. It will be appreciated that the usercomputing device 18 may include other components, sub-components, anddevices commonly found in a computer and/or computing device. In anycase, the communication circuitry 360 illustratively includesconventional wireless communication circuitry 364 configured tofacilitate communication with the main server 12 via the network 14, andthe user computing device 18 may use any suitable communication protocolto communicate with the corresponding main server 12. In addition to, oralternatively to, the number of peripheral devices 40 of the local hubserver 22 ₁ described above, the number of peripheral devices 366 of theuser computing device 18 may include any number of other or additionalperipheral or interface devices. One example of such an additionalperipheral device illustrated in FIG. 3B includes, but should not belimited to, a conventional visual display unit 366.

Referring now to FIG. 4, a simplified block diagram is shown of anembodiment of a product/service department 26 in, at or near which anelectronic device or system 405 is located otherwise associated withproduct/service department 26. The electronic system or device 405illustratively includes many of the features of the point-of-sale system24 illustrated in FIG. 2 and described above, and therefore includescomponents similar to the main server 12 and also to the one or morelocal hub servers 22 ₁-22 _(L), such as a processor 400, an I/Osubsystem 404, a memory 402, a data storage device 406, communicationcircuitry 412 and a number of peripheral devices 414. The communicationcircuitry 412 is configured to facilitate communication with acorresponding one of the local hub servers 22 ₁-22 _(L) and theelectronic system or device 405 may use any suitable communicationprotocol to communicate with the corresponding local hub server 22 ₁-22_(L). In some embodiments, each of the foregoing components may beidentical to corresponding components of the local hub server 22 ₁described above, and a detailed explanation of such components will notbe repeated here for brevity. In other embodiments, any of the one ormore electronic system and/or devices 405 may be configured differentlythan the local hub server 22 ₁ described above. It will be appreciatedthat the electronic system or device 405 may include other components,sub-components, and devices commonly found in a computer and/orcomputing device.

In the illustrated embodiment, the memory 402 illustratively includes anEMS module 408 in the form of, e.g., instructions executable by theprocessor 400, to communicate customer-member information relating tothe customer's EMS account to and from the main server 12, and tocontrol one or more local peripheral devices to facilitatecommunications between customer-members of the enterprise membershipservice (EMS) program and the main server 12 and to facilitate manualcustomer input of customer-identifying information, e.g., an EMSidentifying number and/or code (EMSID). The memory 402 furtherillustratively includes an ordered item (OI) module 410 whichillustratively contains instructions executable by the processor 400 toreceive and process information from the main server 12 relating to oneor more items ordered by one or more customers of the retail enterprise11. An example embodiment of such instructions stored in the OI module410 will be described in greater detail hereinafter with respect to FIG.7.

In addition to, or alternatively to, the number of peripheral devices 40of the local hub server 22 ₁ described above, the number of peripheraldevices 414 of the electronic device or system 405 may include anynumber of other peripheral or interface devices. Examples of some of theperipheral devices 414 illustrated in FIG. 4 include, but should not belimited to, one or more conventional payment interfaces 416, one or moreconventional item price scanners 418, one or more conventional displaymonitors 420, one or more conventional weight scales 422, all asdescribed above with respect to FIG. 2. The peripheral devices 414 ofthe electronic system or device 405 further include at least onewireless signal broadcasting device 424. The at least one wirelesssignal broadcasting device 424 is illustratively positioned in, at, nearor adjacent to the product/service department 26, and is illustrativelyconfigured to broadcast one or more unique wireless identificationsignals, i.e., one or more identification signals that distinguish theparticular wireless signal broadcasting device 424 from wireless signalbroadcasting devices 424 associated with others of the product/servicedepartments 26 ₁-26 _(N) within the retail enterprise 11 as describedabove with respect to the wireless signal broadcasting devices 28 ₁-28_(P). In some embodiments, the wireless signal broadcasting device 424is identical in structure and operation to the wireless signalbroadcasting devices 28 ₁-28 _(P) illustrated and described above. Insome alternate embodiments, the one or more wireless signal broadcastingdevices 424 located at, in or near any product/service department 26 maybe different in structure and/or in one or more operational aspects thanthose of the wireless signal broadcasting devices 28 ₁-28 _(P). In anycase, however, the one or more wireless signal broadcasting devices 424associated with any product/service department 26 is/are operable tobroadcast unique wireless identification signals carrying decodableinformation in the form of a unique identification code (UID) asdescribed above.

The wireless signal broadcasting devices 28 ₁-28 _(P), 424 illustratedin FIGS. 1 and 4 and just described above represent only one example ofa wireless signal broadcasting device that may be included in the system10 for the purpose of broadcasting one or more unique wirelessidentification signals. Those skilled in the art will recognize otherwireless signal broadcasting devices that may be substituted for one ormore of the wireless signal broadcasting devices 28 ₁-28 _(P), 424, andit will be understood that any such other wireless signal broadcastingdevices are contemplated by this disclosure. Any one or more suchalternate wireless signal broadcasting device may be operable tobroadcast one or more unique wireless identification signalsperiodically or non-periodically in any frequency range with anyorientation or direction and/or having any broadcast range, anddecodable information carried by such one or more unique wirelessidentification signals may illustratively include, in addition to aunique identification code, UID, any information that may be includedwithin or appended to the UID.

Referring now to FIG. 5, a simplified block diagram is shown of anembodiment of an environment 500 of the main server 12 illustrated inFIG. 1. In the embodiment shown in FIG. 5, the environment 500 includesa server database 502 which illustratively includes customer accountdata 504, product/service and pricing data 506, a customer purchasehistory 508, a virtual discount coupon database 510, a virtual couponrepository 512, a store location database 514, PID data 516 and, in someembodiments, a customer shopping list database 518.

Customers may elect to participate in an enterprise membership services(EMS) program offered, managed and maintained by the retail enterprise11, by establishing a user account (which may be referred to herein asan “EMS account” or “customer account”) within the server 12, which useraccount may in some cases be an individual account accessible only by anindividual person, e.g., an individual customer, and in other cases maybe a group or “household” account accessible by each of a plurality ofmembers of a predefined group of persons, e.g., members of a family orhousehold, one or more employees of a business enterprise, etc. Theterms “shopper,” “member,” “customer member,” “customer” and“household,” and variants thereof, are used interchangeably in thefollowing description, and such terms should be understood to referinterchangeably to an individual customer or shopper or a predefinedgroup of individual shoppers (referred to herein as a “household”) whoshop at and purchase items from a retail enterprise, and who are membersof an enterprise membership service (EMS) of the type described hereinand provided and managed by the retail enterprise 11.

Illustratively, a software application program is available for downloadfrom the main server 12 via the public network 14 for customers electingto access the EMS program via their user computing device, e.g., one ofthe user computing devices 18 ₁-18 _(K), and/or via their mobilecommunication device, e.g., one of the mobile communication devices 16₁-16 _(J) (and/or 1010). Once downloaded and activated, customers canaccess and manage their EMS account and program features via thesoftware application program executed by their user computing device 18₁-18 _(K) and/or mobile communication device 16 ₁-16 _(J) (and/or 1010).Illustratively, the main server 12 additionally hosts and controls anEMS website accessible via the public network 14, and in suchembodiments shoppers can access and manage their EMS accounts andprogram features by accessing their EMS page(s) of the EMS websitehosted by the main server 12 via a computing device 18 ₁-18 _(L) and/orvia their mobile communication device 16 ₁-16 _(J) (and/or 1010) if thelatter is equipped with a web browser.

In the illustrated embodiment, the customer account data 504 of theserver database 502 has stored therein information relating to useraccounts and profile data for each of the members of the EMS program. Asshoppers join the EMS program, the server 12 establishes an EMS accountwithin the customer account data 504 that is unique to the customer, andassigns to the shopper, and/or the shopper selects, a unique,corresponding enterprise membership services identification code, EMSID,as briefly described hereinabove. The EMSID associated with eachcustomer is entered into the server 12 is stored along with thecustomer's profile data in the customer account data 504, and can beused thereafter to access the customer's EMS account.

In some embodiments, the EMSID may be provided on or as part of one ormore of a shopper's ID card, an ID associated with an RFID tag, whichRFID tag may be part of the NFC communication circuitry of the mobilecommunication device 16 ₁, a shopper's incentive card, or the like. Inother embodiments, the EMSID may not be provided in or as part of anytangible form, and may instead be or include one or more easilyremembered sequences of numbers, letters, symbols or other characters.In any case, customer members of the EMS program described herein mayscan or otherwise communicate or enter via a keypad or touchscreen theirEMSID at one of the point-of-sale terminals 24 ₁-24 _(M), and it isthrough the customer's EMSID that the main server 12 makes virtualdiscount offers available to the customer and/or associates purchasesmade by the customer with the customer's purchase history to therebymonitor and track purchases made by the customer from the retailenterprise 11 during purchase transactions. MPERKS®, a virtual customercoupon collection and redemption program offered to customers by Meijer,Inc. of Grand Rapids, Mich., is an example of one such EMS program ofthe type described herein, although it will be appreciated that anyretail enterprise membership service which offers virtual discountcoupons and/or other benefits to shopper members, and/or which tracksitems purchased by shopper members during item purchase transactions atpoint-of-sale systems or terminals may be alternatively be used.

When a member shopper manually enters the member shopper's EMSID intoone of the point-of-sale system 24 ₁-24 _(M) as part of a purchasetransaction (e.g., during the purchase transaction or as part of theprocess of commencing the purchase transaction), the processor 200 ofthe point-of-sale system 24 ₁-24 _(M) communicates the EMSID to the mainserver 12 which identifies the shopper via the EMSID and associates thatshopper with the current purchase transaction being carried out at thecorresponding point-of-sale system 24 ₁-24 _(M). All such purchasetransaction data relating to items purchased by such an identifiedcustomer during a purchase transaction carried out via one of thepoint-of-sale system 24 ₁-24 _(M) of the retail enterprise 11 isillustratively stored in the customer purchase history database 508where it is associated with the identified customer via the customer'sEMSID. Illustratively, the purchase transaction data stored in thecustomer purchase history database 508 may include, but is not limitedto, product/service identification information, product/service pricing,product purchase date and time, total quantity of products purchased,total quantity of identical products purchased, total transaction price,and the like.

The product/service and pricing data 506 contains information relatingto the retail products and services sold by the retail enterprise 11which the main server 12 serves. Illustratively such information mayinclude, but is not limited to, product/service description informationincluding product/service manufacturer, product/service family or brand,primary product type (e.g., canned tomatoes), secondary product type(e.g., canned diced tomatoes), tertiary product type (e.g., canned dicedtomatoes Italian style), etc., product container size (e.g., 12 oz. can,32 oz. can, 16 oz. package, etc.), product/service pricing information,product/service unit pricing information, current product inventory,ordered product data, product sales history, product/service locationwithin the corresponding retail outlet, and the like. Illustratively,product/service pricing information is linked to product/serviceidentification information via scan codes, e.g., scannable bar codessuch as Universal Product Codes (UPC) or the like, such that when itemsare scanned for purchase, the scan code of each item will identify aparticular item at a particular price in the product/service and pricingdatabase 506.

In some embodiments, the main server 12 illustratively provides, as partof the EMS program described herein, discount offers to member shoppersfor one or more items purchasable from the business enterprise, e.g., inthe form of one or more corresponding virtual discount coupons. In thisregard, each member shopper is provided by the main server 12 withaccess to dedicated portion of a customer virtual coupon repositorydatabase in which virtual discount coupons specific to the membershopper or customer are stored and via which the member shopper mayaccess and redeem one or more virtual discount coupons. In oneembodiment, the server database 502 includes a plurality of customervirtual coupon repositories; one for each of the plurality of membershoppers. Alternatively, the server database 502 may include a singlerepository, and each member shopper of the EMS program is provided withaccess to a dedicated portion of the repository; i.e., which can beaccessed by one shopper to the exclusion of all other shopper members.The server database 502 further illustratively includes a clippedvirtual coupon repository 512 in which virtual discount coupons“clipped” by shopper members, i.e., selected for redemption, are stored.The server database 502 may include a single such repository 512, andeach member shopper of the EMS program may be provided with access to adedicated portion of the repository 512; i.e., which can be accessed byone shopper to the exclusion of all other shopper members, or a separaterepository 512 for each member shopper. The virtual discount coupondatabase 510 illustratively has stored therein virtual discount couponsthat are received from an external source and from which the customervirtual coupon repositories may be populated, e.g., periodically,aperiodically and/or on an ad hoc basis.

The environment 500 of the main server 12 further includes a paymentinterface module 520, an EMS module 522, a transaction module 524 and acommunication module 526. In one embodiment, the payment interfacemodule 520 is configured, in a conventional manner, to process tangibleforms of electronic payment systems (EPS), e.g., tangible electronicfunds transfer instruments such as credit cards, debit cards, etc., usedat the point-of-sale systems 24 ₁-24 _(M). In an example of suchembodiments, the payment interface module 520 illustratively is orincludes a conventional magnetic strip reading device configured to readpayment information stored in magnetic form on a strip affixed to aconventional credit or debit card. Alternatively or additionally, thepayment interface module 520 may be or include the NFC interface 222,and in such embodiments the NFC interface 222 is configured to access,via contact or near-contact with a portable electronic device having alike-configured NFC device 320, electronically readable customer paymentsystem (EPS) information stored on or accessible by the portableelectronic device.

The EMS module 522 is configured to control and manage EMS-relatedactivity of shopper members of the EMS program. The communication module526 is configured, in a conventional manner, to control and manage allcommunications between the main server 12 and the local hub servers 22₁-22 _(L) in embodiments that include the local hub servers 22 ₁-22_(L), and to control and manage all communications between the mainserver 12 and all point-of-sale systems 24 ₁-24 _(M) in embodiments thatdo not include a local hub server 22 ₁-22 _(L).

The transaction module 524 is configured to monitor purchases ofproducts and services made by shopper members of the EMS program usingany of the point-of-sale systems 24 ₁-24 _(M) and to store purchasetransaction data associated with such purchases in the customer purchasehistory database 508. Illustratively, the customer purchase historydatabase 508 is partitioned or otherwise configured to store suchpurchase transaction data in a manner that provides for the separatetracking and identification of some or all of the shopper purchasehistory of each shopper (or household) member.

The communication module 526 is configured, in a conventional manner, tocontrol and manage all communications between the main server 12 and thelocal hub servers 22 ₁-22 _(L) via the network 20 (an to thereby controland manage all communications between the main server 12 and thepoint-of-sale systems 24 ₁-24 _(M) to control and manage allcommunications between the main server 12 and the mobile communicationdevices 16 ₁-16 _(J) (and/or 1010 and/or 1012) via the network 14 and toalso control and manage all communications between the main server 12and the user computing devices 18 ₁-18 _(K) via the network 14.

The environment 500 of the main server 12 further illustrativelyincludes an ordered item notification module 540 which illustrativelyincludes an ordered item processing module 542, an ordered itemapplication download module 544, a store entrance processing module 546,a product/service department (PSD) monitoring module 548, a virtualdiscount coupon (VDC) module 550, a message generation/management module552 and a curb-side delivery processing module 554. It will beunderstood that some embodiments may include each of the store entranceprocessing module 546, the PSD monitoring module 548 and the curb-sidedelivery processing module 554, while other embodiments may include onlyone or a sub-combination of the modules 546, 548 and 554. In any case,the ordered item processing module 542 illustratively containsinformation about each wireless signal broadcasting device 28 ₁-28 _(P),424 in the retail enterprise 11. The ordered item processing module 542is further operable in some embodiments to manage and controlidentification of customer mobile communication devices 16 ₁-16 _(J),and of identification of store entrances relative to the wireless signalbroadcasting devices 28 ₁-28 _(P). The ordered item processing module542 is alternatively or additionally operable in some embodiments tomanage and control identification of customer mobile communicationdevices 16 ₁-16 _(J), 1010 and of identification of curb-side deliverylocations relative to the wireless signal broadcasting devices 28 ₁-28 ₄(see, e.g., FIG. 10). The ordered item processing module 542 isalternatively or additionally still operable in some embodiments tomanage and control identification of customer mobile communicationdevices 16 ₁-16 _(J) and of product/service departments 26 ₁-26 _(N)relative to the wireless signal broadcasting devices 424. An exampleembodiment of a process executed by the ordered item processing module542 is illustrated in FIG. 7, and such a process will be described indetail hereinafter.

In some embodiments, e.g., in embodiments which include the storeentrance processing module 546 and/or the curb-side delivery processingmodule 554, the ordered item processing module 542 may be operable tomanage and control identification of customer mobile devices 16 ₁-16_(J) and/or 1010 and of identification of locations of any such devicesrelative to the geographic location of any of the brick-and-mortarstores 25 ₁-25 _(L) of the retail enterprise 11. An example embodimentof such a process executed by the ordered item processing module 542 isillustrated in FIG. 11, and such a process will be described in detailhereinafter.

The ordered item application download module 544 illustratively containsthe ordered item (OI) application 310, and customers may downloaded theordered item application 310 from the ordered item application downloadmodule 544 to the memory 304 their mobile communication devices 16 ₁-16_(J), 1010 in a conventional manner.

The store entrance processing module 546 is illustratively operable tomanage and control a customer and product/service departmentnotification process when a customer has been detected entering abrick-and-mortar store in which the customer may have pending one ormore orders for one or more items from one or more product/servicedepartments thereof. An example embodiment of a process executed by thestore entrance processing module 546 is illustrated in FIG. 8, and sucha process will be described in detail hereinafter.

The PSD monitoring module 548 is illustratively operable to manage andcontrol a customer and product/service department notification processwhen a customer has been detected at a product/service department atwhich the customer may have pending one or more orders for one or moreitems. An example embodiment of a process executed by the PSD monitoringmodule 548 is illustrated in FIG. 9, and such a process will bedescribed in detail hereinafter.

The virtual discount coupon (VDC) module 550 is illustratively operableto generate and/or retrieve from the virtual discount coupon database510 one or more virtual discount coupons during the store entranceand/or PSD monitoring processes illustrated in FIGS. 8 and 9respectively.

The message generation/management module 552 is illustratively operableto generate and/or retrieve one or more messages to transmit to aproduct/service department and/or to a customer's mobile communicationdevice 16 ₁-16 _(J), 1010 during the store entrance, PSD monitoringand/or curb-side delivery processes illustrated in FIGS. 8, 9 and 12respectively.

The curb-side delivery processing module 554 is illustratively operableto manage and control a curb-side delivery notification process when acustomer has been detected entering a curb-side delivery area or laneadjacent to a brick-and-mortar store and/or when a customer has beendetected as entering or crossing a specified geographic boundary, e.g.,a geofence, defined at least partially about a brick-and-mortar store,in which the customer may have pending one or more orders for one ormore items from a curb-side delivery department thereof. An exampleembodiment of a process executed by the curb-side delivery processingmodule 554 is illustrated in FIG. 12, and such a process will bedescribed in detail hereinafter.

Referring now to FIG. 6, a simplified block diagram is shown of anillustrative example of a portion of the system 10 of FIG. 1 implementedin one of the brick-and-mortar stores, e.g., the brick-and-mortar store25 ₁, of the retail enterprise 11. The example depicted in FIG. 6illustrates a communications framework for detecting by customer mobilecommunication devices 16 ₁-16 _(J) of wireless identification signalsbroadcast by a wireless signal broadcasting device 424 associated with,i.e., located at, in, near or along a boundary of, one of theproduct/service departments 26 and for conducting wirelesscommunications relating thereto between the customer mobilecommunication devices 16 ₁-16 _(J) and the main server 12 of the retailenterprise 11. It will be understood that the communication frameworkdepicted in FIG. 6 and the following description thereof also each applyequally to the detection by customer mobile communication devices 16₁-16 _(J) of wireless identification signals broadcast by any of thewireless signal broadcasting devices 28 ₁-28 _(P) associated with andlocated in, at or near any of the brick-and-mortar stores, e.g., thebrick-and-mortar store 25 ₁ illustrated in FIG. 1, and for conductingwireless communications relating thereto between the customer mobilecommunication devices 16 ₁-16 _(J) (and/or 1010) and the main server 12of the retail enterprise 11.

In the illustrated embodiment, the product/service department 26 isshown coupled to the local hub server 22, and the local hub server 22 iscoupled to the main server 12 via the private network 20 as illustratedand described with respect to FIG. 1. In some alternate embodiments, theproduct/service department 26 may alternatively or additionally becoupled to one or more of the plurality of point-of-sale systems 24 ₁-24_(M) illustrated in FIG. 1. Associated with the product/servicedepartment 26, as illustrated in FIG. 6, is at least one wireless signalbroadcasting devices 424 which may be located anywhere within, along,above or adjacent to the product/service department 26. In theembodiment illustrated in FIG. 6, for example, the wireless signalbroadcasting device 26 is illustratively positioned at or near acustomer service counter or other customer service area of theproduct/service department 26, although it will be understood that suchan arrangement is provided only by way of example and should not beconsidered to be limiting in any way. As the communication frameworkdepicted in FIG. 6 relates to one or more of the wireless signalbroadcasting devices 28 ₁-28 _(P), such wireless signal broadcastingdevices 28 may illustratively be positioned anywhere within, near oradjacent to the corresponding brick-and-mortar store, such as thebrick-and-mortar store 25 ₁ depicted in FIG. 1 and/or thebrick-and-mortar store 25 depicted in FIG. 10. In one illustrativeexample, as illustrated in FIG. 1, one or more such wireless signalbroadcasting devices 28 may be positioned at or near one or moreentrances to the brick-and-mortar store as will be discussed hereinafterwith respect to FIGS. 7 and 8. In another illustrative example, asillustrated in FIG. 10, one or more such wireless signal broadcastingdevices 28 may be positioned near one of the brick-and-mortar stores,e.g., in or at a curb-side pickup area located outside of abrick-and-mortar store 25 adjacent to a curb-side delivery servicedepartment 26 of the store 25, as will be described in greater detailhereinafter with respect to FIGS. 10-12.

As described hereinabove with respect to FIG. 1, each wireless signalbroadcasting devices 28 ₁-28 _(P), 424 is operable to broadcast wirelessidentification signals. Such signals may be broadcast continuously,continually or on demand, and may be periodic or non-periodic. In someembodiments, as illustrated by example in FIG. 6, each wireless signalbroadcasting device 424 (and each one or more of the wireless signalbroadcasting devices 28 ₁-28 _(P)) is communicatively coupled directlyto the local hub server 22, although in other embodiments one or more ofthe wireless signal broadcasting devices 28 ₁-28 _(P), 424 may becommunicatively coupled to one or more of the point-of-sale systems 24₁-24 _(M), and in still other embodiments one or more of the wirelesssignal broadcasting devices 28 ₁-28 _(P), 424 may not communicativelycoupled to the local hub server 22 or to any point-of-sale system 24₁-24 _(M), or may be coupled to the local hub server 22 or to one ormore of the point-of-sale systems 24 ₁-24 _(M) only for purposes ofdiagnostic monitoring thereof.

Each wireless signal broadcasting devices 28 ₁-28 _(P), 424 isillustratively configured to broadcast wireless identification signalswith a predefined orientation (i.e., direction) and broadcast range. Inthe embodiment illustrated in FIG. 6, for example, the wireless signalbroadcasting device 424 is illustratively operable to broadcast wirelessidentification signals away from the product/service department 26 andtoward the customer area of the brick-and-mortar store as indicated inFIG. 6 by the dashed-line ring emanating from the wireless signalbroadcasting device 424, and the wireless signal broadcasting devices424 is further illustratively configured to broadcast a wirelessidentification signal with a predefined broadcast range. Generally, thebroadcast range of any wireless signal broadcasting device 28 ₁-28 _(P),424 illustrated and described herein should be understood to be definedby an area relative to that wireless signal broadcasting device 28 ₁-28_(P), 424 within which the signal strength of wireless signals broadcastthereby is sufficient to be detected by the communication circuitry 316of the customer mobile communication devices 16 ₁-16 _(J), and outsideof which the signal strength of wireless signals broadcast thereby isundetectable by the communication circuitry 316 carried by the customermobile communication devices 16 ₁-16 _(J). As used in the previoussentence, the term “undetectable” should be understood to mean any ofindistinguishable by the communication circuitry 316 of the customermobile communication devices 16 ₁-16 _(J) from backgroundelectromagnetic noise, distinguishable by the communication circuitry316 of the customer mobile communication devices 16 ₁-16 _(J) frombackground electromagnetic noise but not decodable by the communicationcircuitry 316 of the customer mobile communication devices 16 ₁-16 _(J)or distinguishable by the communication circuitry 316 of the customermobile communication devices 16 ₁-16 _(J) from backgroundelectromagnetic noise but not decodable by communication circuitry ofany electronic device or system to which the communication circuitry 316of the customer mobile communication devices 16 ₁-16 _(J) may transmitor otherwise relay the wireless broadcast signal(s).

As described hereinabove with respect to FIG. 1, each of the wirelesssignal broadcasting device 28 ₁-28 _(P), 424 is illustratively operableto broadcast one or more unique wireless identification signals whichdistinguish each particular wireless signal broadcasting devices 28 ₁-28_(P), 424 from others of the wireless signal broadcasting devices 28₁-28 _(P), 424 located at the same brick-and-mortar store, and in otherembodiments also from all others of the wireless signal broadcastingdevices 28 ₁-28 _(P), 424 within the retail enterprise 11. At somepoint, while the wireless signal broadcasting devices 28 ₁-28 _(P), 424are broadcasting one or more unique wireless identification signals, acustomer carrying the customer's the mobile communication device 16 mayapproach a location at which a wireless signal broadcasting device 28₁-28 _(P), 424 is positioned. This scenario is illustrated in FIG. 6 inwhich the customer's mobile communication device 16 is shown adjacent tothe wireless signal broadcasting device 424. The customer's mobileelectronic device 16 and the main server 12 are each illustrativelyconfigured to communicate wirelessly with each other via the publicnetwork 14 as also shown in FIG. 6, and in some embodiments thebrick-and-mortar store, e.g., the store 25 ₁, may illustrativelyimplement one or more local or wide area networks for the purpose ofproviding or enhancing wireless communication access by customer mobilecommunication devices 16 ₁-16 _(J) to the public network 14. In anycase, as the mobile communication device 16 carried by the customerapproaches the wireless signal broadcasting devices 424, the customer'smobile communication device 16 enters a space that is within thebroadcast range of the wireless signal broadcasting devices 424 asillustrated in FIG. 6, and when within the broadcast range of thewireless signal broadcasting devices 424 the customer's mobilecommunication device 16 is able to detect the unique identificationsignals being broadcast thereby. Illustratively, the broadcast range ofthe wireless signal broadcasting device 424 is sufficiently large, wideand/or oriented so as to be detectable by customers' mobilecommunication devices 16 ₁-16 _(J) during typical entry of customerscarrying their mobile communication devices 16 ₁-16 _(J) into acorresponding one of the product/service department 26 ₁-26 _(N), and/orduring typical approach by such a customer to a customer service counteror customer service area of the product/service department 26 ₁-26 _(N)and/or at one or more typical locations relative to the product/servicedepartment 26 ₁-26 _(N) at which customers await service, are servedand/or are delivered ordered items by an attendant of theproduct/service department 26 ₁-26 _(N). Further illustratively, thebroadcast range of the wireless signal broadcasting device 424 is, atthe same time, sufficiently small, narrow and/or oriented so as toprovide a desired amount or degree of resolution in determining thelocation of a customer's mobile communication device 16 relative to thewireless signal broadcasting devices 424 and/or relative to theproduct/service department 26 ₁-26 _(N). Similarly with respect to thewireless signal broadcasting device 28 ₁-28 _(P), the broadcast range ofeach such wireless signal broadcasting device is sufficiently large,wide and/or oriented so as to be detectable by customers' mobilecommunication devices 16 ₁-16 _(J) during typical entry of customerscarrying their mobile communication devices 16 ₁-16 _(J) into one of theentrances of the brick-and-mortar store and/or during typical passage ofsuch customers by one or more locations and/or structures within thestore, while at the same time sufficiently small, narrow and/or orientedso as to provide a desired amount or degree of resolution in determiningthe location of a customer's mobile communication device 16 relative toany such wireless signal broadcasting device 28 and/or relative to oneor more structures and/or locations within or relative to thebrick-and-mortar store. The general communication framework illustratedin FIG. 6 is used in the process 700 illustrated and described belowwith reference to FIG. 7 for detecting by customer mobile communicationdevices 16 ₁-16 _(J) of wireless identification signals broadcast by atleast one wireless signal broadcasting device 424 associated with atleast one of the product/service departments 26 ₁-26 _(N) and/or fordetecting by customer mobile communication devices 16 ₁-16 _(J) (and/or1010) of wireless identification signals broadcast by at least one ofthe wireless signal broadcasting device 28 ₁-28 _(P) associated with atleast one entrance to (and/or other location within, near or adjacentto, e.g., outside of) a brick-and-mortar store of the retail enterprise11, and in either case also for conducting wireless communicationsbetween such customer mobile communication devices 16 ₁-16 _(J) (and/or1010) and the main server 12 of the retail enterprise 11.

Referring now to FIG. 7, a simplified flow diagram is shown depicting anembodiment of a process 700 for identifying customers atbrick-and-mortar stores of the retail enterprise 11 that have one ormore pending orders for one or more items. As indicated by the frameworkof the process 700 illustrated in FIG. 6, a portion of the process 700,i.e., the portion to the left of the left-most vertical line andcentered under the heading “MCD,” illustratively represents one or moresoftware applications executed by the processor 300 of a customer'smobile communication device 16 (or 1010), i.e., one of the mobilecommunication devices 16 ₁-16 _(J) (or 1010) associated with a customerwhich has one or more pending orders for one or more items in one ormore of the product/service departments 26 ₁-26 _(N) of one of thebrick-and-mortar stores 25 ₁-25 _(L) of the retail enterprise. In oneembodiment, this portion of the process 700 is or includes the ordereditem (OI) application module 310 stored in the memory 304 (and/or datastorage 306) of the customer's mobile communication device 16, 1010 (seeFIG. 3A) in the form of instructions executable by the processor 300 ofthe customer's mobile communication device 16, 1010. The process stepsof this portion of the process 700 will be described below for purposesof this disclosure as being executed by the processor 300 of thecustomer's mobile communication device 16 1010.

Another portion of the process 700, i.e., the portion between theleft-most vertical line and the center vertical line in FIG. 7, andcentered under the heading “wireless signal broadcasting device(s),”does not necessarily represent a portion of the process 700 that isstored in a memory of any system or server in the form of instructionsexecutable by a processor, but rather represents operation of thevarious wireless signal broadcasting devices 28 ₁-28 _(P) and/or 424illustrated and described with respect to FIGS. 1 and 6 as suchoperation relates to the broadcast of wireless identification signals asdescribed hereinabove.

Yet another portion of the process 700, i.e., the portion between thecenter vertical line and the right-most vertical in FIG. 7, and centeredunder the heading “Main Server,” illustratively represents one or moresoftware applications executed by the processor 50 of the main server12. In one embodiment, this portion of the process 700 is or includesone or more of the modules stored in the Ordered Item NotificationModule 540 (see FIG. 5) in the form of instructions executable by theprocessor 50 of the main server 12. The process steps of this portion ofthe process 700 will be described below for purposes of this disclosureas being executed by the processor 50 of the main server 12. In somealternate embodiments, e.g., that may or may not include a main server12, this portion of the process 700 may alternatively be stored in thememory 34 (and/or data storage 36) of one or more of the local servers22 ₁-22 _(L) in the form of instructions executable by the processor 30of the one or more local servers 22 ₁-22 _(L), stored in the memory ofone of the point-of-sale systems 24 ₁-24 _(M) within one or more of thebrick-and-mortar enterprise stores or outlets in the form ofinstructions executable by a processor 200 associated with any suchpoint-of-sale system 24 ₁-24 _(M) and/or stored in a memory andexecutable by a processor of another system external to or supplementalto the system 10 illustrated FIG. 1.

Still another portion of the process 700, i.e., the portion to the rightof the right-most vertical line in FIG. 7, and centered under theheading “PSD(s),” illustratively represents one or more softwareapplications executed by a processor 400 of an electronic device orsystem 405 associated with any of the product/service departments 26₁-26 _(N). In one embodiment, this portion of the process 700 is orincludes the ordered item (OI) application module 410 stored in thememory 402 (and/or data storage 406) of the product/service department'selectronic device or system 405 (see FIG. 4) in the form of instructionsexecutable by the processor 400 of the electronic device or system 405.The process steps of this portion of the process 700 will be describedbelow for purposes of this disclosure as being executed by the processor400 of the product/service department electronic device or system 405.

It will further be understood that portions of the process 700illustrated as being executed by one processor/device or oneprocessor/server or one processor/system may alternatively be executedby a different processor/device or processor/server or processor/systemin the system 10, and/or by two or more such processors in any one orcombination of such devices, servers and/or systems, some examples ofwhich are described above.

In the process 700 illustrated in FIG. 7, item 702 illustrativelyidentifies action taken by one or more of the plurality of wirelesssignal broadcasting devices 28 ₁-28 _(P), e.g., positioned at oradjacent to one or more of the entrances to one of the brick-and-mortarstores of the retail enterprise 11, at or adjacent to a curb-sidedelivery area of one of the brick-and-mortar stores and/or at one ormore other locations within, near or adjacent to one of thebrick-and-mortar stores, and/or action taken by at least one wirelesssignal broadcasting device 424 associated with one of the plurality ofproduct/service departments 26 ₁-26 _(N) at which a customer has one ormore pending orders for one or more items. In some embodiments, eachsuch one or more wireless signal broadcasting devices 28 ₁-28 _(P)and/or 424 operate to continuously or continually broadcast wirelessidentification signals, each of which carry decodable information in theform of a unique identification code (UID) as described hereinabove withrespect to FIG. 1. In some embodiments, such signals may be periodicallyor non-periodically broadcast by the one or more wireless signalbroadcasting devices 28 ₁-28 _(P), 424 and in other embodiments somesuch wireless signal broadcasting devices may periodically broadcastwireless signals and others of the wireless signal broadcasting devicesmay broadcast wireless signals non-periodically. In still otherembodiments, one or more such wireless signal broadcasting devices maysometimes periodically broadcast wireless signals and at other timesbroadcast wireless signals non-periodically. In any case in embodimentsin which such wireless signal broadcasting devices continuously orcontinually broadcast wireless signals, the process advances to step 704where the wireless communication circuitry 316 of the customer's mobilecommunication device 16 (or 1010) is illustratively operable to detectany such broadcast wireless identification signals within the broadcastrange of which the MCD 16 (or 1010) is located as described above withrespect to FIG. 6.

In some alternative embodiments, one or more wireless signalbroadcasting devices 28 ₁-28 _(P) and/or 424 may be selectively operableto periodically or non-periodically broadcast wireless identificationsignals. In such embodiments, one or more such wireless signalbroadcasting devices may, for example, be responsive to one or morecontrol signals produced by the processor 50 of the main server, theprocessor 30 of one of the local hub servers 22 ₁-22 _(L), a processor200 associated with one or more of the point-of-sale systems 24 ₁-24_(M) located in the brick-and-mortar store and/or other processor(s)associated with the one or more devices 405, to selectively wake up orotherwise activate and begin broadcasting wireless identificationsignals, and to selectively deactivate and cease broadcasting wirelesssignals. In some embodiments, the brick-and-mortar store may include aplurality of conventional proximity or motion-detecting sensors, e.g.,one or more such sensors at or near one or more of the wireless signalbroadcasting devices 28 ₁-28 _(P) and/or 424 and production of suchcontrol signals may be triggered by proximity or motion signals producedby such sensors. In other embodiments, production of such controlsignals may, for example, be triggered by the processor 50, e.g., inresponse to certain operating hours of one or more of thebrick-and-mortar stores or outlets of the retail enterprise 11. Thoseskilled in the art will recognize that any modifications required toimplement and integrate one or more steps of any such alternateembodiment into the process 700 would be a mechanical step for a skilledprogrammer, and that such alternate embodiments therefore fall withinthe scope of this disclosure.

As used hereinafter, the term “in-range” will be understood to refer toone or more of the wireless signal broadcasting devices 28 ₁-28 _(P)and/or 424 within the broadcast range of which a customer's mobilecommunication device 16 (or 1010) is presently located. Thus, in theexample illustrated in FIG. 6 the customer carrying the mobilecommunication device 16 is within the broadcast range of the wirelesssignal broadcasting devices 424 as illustrated by the dashed-linewireless identification signals in contact with the device 16, and inthis example the wireless signal broadcasting device 424 is an in-rangewireless signal broadcasting device relative to the customer mobilecommunication device 16.

Referring again to FIG. 7, the processor 300 of the customer's mobilecommunication device 16 (or 1010) is responsive at step 704 to detectthe unique identification signals wirelessly broadcast by any in-rangeones of the plurality of wireless signal broadcasting devices 28 ₁-28_(P) and/or 424 at the time of execution of step 704. Following step704, the process 700 advances to step 706 where the processor 300 of thecustomer's mobile communication device 16 is responsive to detection ofwireless identification signals broadcast by any in-range wirelesssignal broadcasting devices 28 ₁-28 _(P) and/or 424 to wake up andactivate the OI application 310 stored in the memory 304 or data storage306 of the mobile communication device 16 (or 1010). Thereafter at step708, the processor 300 is operable to transmit one or more wirelesssignals to the main server 12, e.g., to control the communicationcircuitry 316 in the device 16 (or 1010) to wirelessly transmit one ormore signals to the main server 12 via the public network 14. The one ormore wireless signals illustratively contain(s) the uniqueidentification (UID) of each in-range wireless signal broadcastingdevices 28 ₁-28 _(P), and/or 424, and also illustratively contain(s) anidentification of the customer's mobile communication device 16 (or1010). The identification of the customer's mobile communication device16 (or 1010) may be, for example, the communication information (CI),e.g., cellular telephone number and/or other communication identifier,which identifies the customer's mobile communication device 16 (or 1010)to the main server 12 for the purpose of communicating information fromthe main server 12 back to the customer's mobile communication device 16(or 1010).

In one embodiment, the processor 300 of the customer's mobilecommunication device 16 (or 1010) is operable at step 706 to process thewireless broadcast signal broadcast by one or more in-range wirelesssignal broadcasting devices 28 ₁-28 _(P) and/or 424 to determinetherefrom the UID of each such in-range wireless signal broadcastingdevice, and to include each such UID in the one or more wireless signalstransmitted by the customer's mobile communication device 16 (or 1010)to the main server 12 at step 708. In other embodiments, the processor300 may be operable at step 706 to process one or more of the wirelessbroadcast signals broadcast by in-range ones of the wireless signalbroadcasting devices 28 ₁-28 _(P) and/or 424 and detected by thecustomer's mobile communication device 16 (or 1010), and to include inthe one or more wireless signals transmitted by the customer's mobilecommunication device 16 (or 1010) to the main server 12 at step 708 onlythe raw signal content of one or more detected wireless identificationsignals. In such embodiments, the processor 50 of the main server 12 maybe operable to thereafter process the raw signal content transmittedthereto by the customer's mobile communication device 16 (or 1010) todetermine therefrom the UID of each corresponding in-range wirelesssignal broadcasting devices 28 ₁-28 _(P) and/or 424.

Following step 708, the main server 12 is operable at step 710 toreceive the one or more wireless signals transmitted by the customer'smobile communication device 16 (or 1010) at step 608, and the processor50 of the main server 12 is thereafter operable at step 712 to processthe UID(s) contained therein to determine the identities of each of theone or more in-range ones of the wireless signal broadcasting devices 28₁-28 _(P) and/or 424 whose wirelessly broadcast identification signalswere detected by the customer's mobile communication device 16 (or 1010)at step 704, and to process the resulting wireless signal broadcastingdevice identity data to determine one or more of the location oridentity of the brick-and-mortar store or outlet in which the detectedwireless signal broadcasting device(s) 28 ₁-28 _(P) and/or 424 is/arelocated, the type of wireless signal broadcasting device(s) detected,and, in some embodiments, the location of the customer's mobilecommunication device 16 (or 1010) relative to a structure or locationwithin the identified brick-and-mortar store.

As described briefly above with respect to FIG. 5, the ordered itemprocessing module 542 illustratively has stored therein wireless signalbroadcasting device identity information for each wireless signalbroadcasting device 28 ₁-28 _(P) and 424 in the retail enterprise 11 aswell as additional information from which the processor 50 candetermine, for each wireless signal broadcasting device 28 ₁-28 _(P) and424, the identity of the brick-and-mortar store at which each suchwireless signal broadcasting device 28 ₁-28 _(P) and 424 is located aswell as the relative location or position of that wireless signalbroadcasting device within or about the identified brick-and-mortarstore. In one embodiment, for example, the wireless signal broadcastingdevice identity information stored in the ordered item processing module542 includes the UIDs for each of the wireless signal broadcastingdevices 28 ₁-28 _(P) and 424 in the retail enterprise 11, and each suchUID includes or is associated with, e.g., linked to, mapped to, orotherwise identified in the ordered item processing module 540 with, abrick-and-mortar store identifier (BMID), e.g., in the form of adesignation number or code, which identifies the corresponding one ofthe brick-and-mortar stores of the retail enterprise in which thecorresponding wireless signal broadcasting devices is located. In someembodiments, the brick-and-mortar location identifiers, BMID, areillustratively stored in the form of store numbers or codes, such asstore 10 or store JS-3. In other embodiments, the brick-and-mortarlocation identifiers may include additional information such as city,state or country identifier or the like.

In some embodiments, each UID is further associated in the ordered itemprocessing module 542 with, e.g., linked to, mapped to or otherwiseidentified with, a wireless signal broadcasting device type identifier(BT), e.g., in the form of a designation code or other identifier whichidentifies the type of the corresponding wireless signal broadcastingdevice. The wireless signal broadcasting device type identifiers, BT, inembodiments which include wireless signal broadcasting device typeidentifiers, are illustratively stored in the form of wireless signalbroadcasting device type codes, each of which illustratively identifythe wireless signal broadcasting device type by a particular use orlocation of a wireless signal broadcasting device. Examples of wirelesssignal broadcasting device type codes may include, for example, “POS”which illustratively identifies wireless signal broadcasting devicesused with and located at one or more of the point-of-sale systems 24₁-24 _(M), “SE” which illustratively identifies wireless signalbroadcasting devices 28 ₁-28 _(P) used at and located in or at customerentry areas to brick-and-mortar stores of the retail enterprise, “PSD”which illustratively identifies wireless signal broadcasting device 424used at and located in, at or near one or more of the product/servicedepartments 26 ₁-26 _(N), “CSD” which illustratively identifies wirelesssignal broadcasting devices 28 ₁-28 _(P) used and located at or near oneor more curb-side delivery areas outside of and adjacent tobrick-and-mortar stores, and the like. Those skilled in the art willrecognize other uses and/or locations where one or more wireless signalbroadcasting devices may be positioned and other corresponding codesthat may be used to identify such wireless signal broadcasting devicestypes, and it will be understood that any such other wireless signalbroadcasting devices uses/locations and associated wireless signalbroadcasting device type codes are contemplated by this disclosure.

In some embodiments, each UID is additionally or alternativelyassociated in the ordered item processing module 542 or other databasewith, e.g., linked to, mapped to or otherwise identified with, awireless signal broadcasting device location identifier (BID), e.g., inthe form of a designation code or other identifier which identifies thelocation of the corresponding wireless signal broadcasting device withinthe brick-and-mortar enterprise store identified by BMID. In someembodiments, the wireless signal broadcasting device locationidentifiers, BID, are illustratively stored in the form of locationcoordinates relative to a base or reference set of coordinates. In somealternate embodiments, the wireless signal broadcasting device locationidentifiers, BID, may be stored in the form of one or more locationcodes identifying one or more of an aisle, shelf, section, merchandisearea, product/service department, customer entry area, curb-side pickuparea, specific pickup location or location identifier within a curb-sidepickup area, point-of-sale system and/or other identifier whichidentifies a particular location within, near or adjacent to acorresponding one of the plurality of brick-and-mortar stores. As onespecific example of a wireless signal broadcasting device locationidentifier, BID, which identifies one of the product/service departments26 ₁-26 _(N), a particular BID may be or include a location code BAKwhich identifies the location of a corresponding wireless signalbroadcasting device 424 to be positioned at or near a bakery located inthe brick-and-mortar store. As another example, another particular BIDmay be or include a location code ENT1 which identifies the location ofa corresponding one of the wireless signal broadcasting device 28 ₁-28_(P) to be positioned at or near entrance number 1 of thebrick-and-mortar store. As still another example, a particular BID maybe or include a location code CSP3 which identifies the location of acorresponding one of the wireless signal broadcasting device 28 ₁-28_(P) to be positioned at or near curb-side pickup location 3 located inor at a curb-side pickup area outside of and adjacent to thebrick-and-mortar store. Other techniques for storing and/or processingwireless signal broadcasting devices identity information to determinethe relative or precise location of any of the wireless signalbroadcasting devices 28 ₁-28 _(P) and/or 424 within, outside of orrelative to any of the brick-and-mortar enterprise stores will occur tothose skilled in the art, and it will be understood that any such othertechniques are contemplated by this disclosure.

In any of the foregoing embodiments, the processor 50 is illustrativelyoperable at step 712 to process each of the one or more received UID(s)by searching for a corresponding UID stored in the ordered itemprocessing module 542 or other database that matches the wirelesslyreceived UID and determining from the BMID associated therewith in theordered item processing module 542 the identity of the corresponding oneof the brick-and-mortar stores of the retail enterprise 11 at which thecorresponding wireless signal broadcasting devices is located. In someembodiments, the processor 50 is further illustratively operable at step712 to identify the wireless signal broadcasting device type, BT,associated in the ordered item processing module 542 with the matchedUID and determining from the identified BT the type of the detectedwireless signal broadcasting device. In some embodiments, the processor50 is alternatively or additionally operable at step 712 to identify thewireless signal broadcasting device identity, BID, associated in theordered item processing module 542 or other database with the matchedUID and determining from the identified BID the location of thecorresponding wireless signal broadcasting device within or relative tothe one of the brick-and-mortar stores of the retail enterprise 11identified by BMID.

The processor 50 is further illustratively operable at step 712 toprocess the identified brick-and-mortar store or outlet and the wirelesssignal broadcasting device type and/or location information for each UIDreceived at step 708 from the customer's mobile communication device 16to determine or estimate the location of the customer's mobilecommunication device 16 relative to one or more reference locationswithin or relative to the identified brick-and-mortar store. Theidentity of the brick-and-mortar store or outlet is determined from theBMID values associated with each received UID, and the types andlocations of each wireless signal broadcasting device 28 ₁-28 _(P)and/or 424 from which a UID was received are determined from the BTand/or BID values respectively associated with each received UID, andthe customer's location can therefore be determined or estimated withinor relative to the identified brick-and-mortar store based on the typesand/or locations of the various wireless signal broadcasting devices 28₁-28 _(P) and/or 424 from which a UID was received. Thus, in the exampleillustrated in FIG. 6, a UID would be wirelessly received by thecustomer's mobile communication device 16 from the wireless signalbroadcasting device 424, and the processor 50 is illustratively operableat step 712 to determine from the BMID associated in the ordered itemprocessing module 542 or other database with the UID stored therein thatmatches the wirelessly received UID that the wireless signalbroadcasting device 424 is located in the brick-and-mortar store 25 ₁.In embodiments in which a wireless signal broadcasting device typeidentifier, BT, is also associated in the ordered item processing module542 with the matching UID stored therein, the processor 50 may befurther operable at step 712 to determine from the BT associated withthe matching UID that the wireless signal broadcasting device 424 is aproduct/service department (PSD) wireless signal broadcasting device. Inembodiments in which a wireless signal broadcasting device locationidentifier, BID, is alternatively or additionally associated in theordered item processing module 542 with the matching UID stored therein,the processor 50 may be further operable at step 712 to determine fromthe BID associated with the matching UID that the wireless signalbroadcasting device 424 is located at or near the pharmacy department ofthe identified brick-and-mortar store 26 of the retail enterprise 11.

As another example in which a UID is received by the customer's mobilecommunication device 16 from a wireless signal broadcasting device 28,e.g., one of the wireless signal broadcasting devices 28 ₁-28 _(P), thatis located at an entrance, e.g., entrance 1, to a brick-and-mortarstore, e.g., store 25 ₁, the processor 50 is illustratively operable atstep 712 to determine from the BMID associated in the ordered itemprocessing module 542 or other database with the UID stored therein thatmatches the wirelessly received UID that the wireless signalbroadcasting device 28 is located at the brick-and-mortar store 25 ₁. Inembodiments in which a wireless signal broadcasting device typeidentifier, BT, is also associated in the ordered item processing module542 with the matching UID stored therein, the processor 50 may befurther operable at step 712 to determine from the BT associated withthe matching UID that the wireless signal broadcasting device 28 is astore entrance (SE) wireless signal broadcasting device. In embodimentsin which a wireless signal broadcasting device location identifier, BID,is alternatively or additionally associated in the ordered itemprocessing module 542 with the matching UID stored therein, theprocessor 50 may be further operable at step 712 to determine from theBID associated with the matching UID that the wireless signalbroadcasting device 28 is located at entrance 1 of the brick-and-mortarstore 25 ₁.

As yet another example in which a UID is received by the customer'smobile communication device 16 and/or 1010 from a wireless signalbroadcasting device 28, e.g., one of the wireless signal broadcastingdevices 28 ₁-28 _(P), that is located at one of the curb-side pickuplocations, e.g., curb-side pickup location CS2 of the curb-side pickuparea 1006 (see FIG. 10), to a brick-and-mortar store, e.g., store 25 ₁,the processor 50 is illustratively operable at step 712 to determinefrom the BMID associated in the ordered item processing module 542 orother database with the UID stored therein that matches the wirelesslyreceived UID that the corresponding wireless signal broadcasting device282 is located at the brick-and-mortar store 25 ₁. In embodiments inwhich a wireless signal broadcasting device type identifier, BT, is alsoassociated in the ordered item processing module 542 with the matchingUID stored therein, the processor 50 may be further operable at step 712to determine from the BT associated with the matching UID that thewireless signal broadcasting device 282 is a curb-side pickup (CSP)wireless signal broadcasting device. In embodiments in which a wirelesssignal broadcasting device location identifier, BID, is alternatively oradditionally associated in the ordered item processing module 542 withthe matching UID stored therein, the processor 50 may be furtheroperable at step 712 to determine from the BID associated with thematching UID that the wireless signal broadcasting device 282 is locatedat the curb-side pickup location CS2 of the curb-side pickup area 1006of the brick-and-mortar store 25 ₁.

It will be understood that while some embodiments may include BT and/orBID in the data associated in the ordered item processing module 542with a corresponding UID, other embodiments may exclude either or bothof BT and BID. In some cases, for example, it may be enough to determinethat the UID detected by the customer's mobile communication device 16(or 1010) is located at a particular brick-and-mortar store of theretail enterprise 11, while in other cases it may be necessary orbeneficial to determine a type and/or location of the correspondingwireless signal broadcasting device.

At step 708, the processor 300 is further illustratively operable towirelessly transmit to the main server information relating to theidentity of the transmitting mobile communication device 16 (or 1010)and/or the customer associated therewith. The main server 12 receivessuch customer/device identity information at step 710, and thereafter atstep 712 to processor 50 is illustratively operable to process thereceived customer/device identity information to determine the identityof the customer associated with the mobile communication device 16 (or1010) which wirelessly transmitted the UID(s) at step 708. In oneembodiment, the memory 304 or data storage 306 of the mobilecommunication device 16 (or 1010) has stored therein communicationinformation (CI) which identifies the mobile communication device 16 (or1010) for purposes of wirelessly communicating therewith, e.g., a mobiletelephone number, vehicle identification number and/or othercommunication code. In such embodiments, the processor 300 isillustratively operable at step 708 to wirelessly transmit the CI, andat step 712 the processor 50 of the main server 12 is illustrativelyoperable to process the communication information (CI) by searching thecustomer account data 404 for a matching CI and determining a customeridentifier associated in the customer account data 404 with CI storedtherein that matches the wirelessly received CI. In some embodiments inwhich items ordered by customers from one or more product/servicedepartments are associated with and tracked by the processor 50 inaccordance with the EMS program described above, the customer identifiermay be the EMSID associated therewith in the customer account data 404.In other embodiments in which items ordered by customers from one ormore product/service departments are not associated with and tracked bythe processor 50 in accordance with the EMS program described above, butare instead associated with and tracked by the processor in accordancewith ordered item data stored in the customer account data 404 or otherdatabase, the customer identifier may be the name or other identifier ofthe customer that ordered the one or more items. In either case, thecustomer identifier stored in the customer account data 504 or otherdatabase which identifies the customer will be referred to hereinafteras CUSTID.

In some alternate embodiments, the memory 304 or data storage 306 of thecustomer's mobile communication device 16 (or 1010) may have storedtherein the customer identifier, CUSTID, which identifies the customerthat placed an order for one or more items from one or moreproduct/service departments 26 ₁-26 _(N). In such embodiments, theprocessor 300 is illustratively operable at step 708 to wirelesslytransmit CUSTID and at step 712 the processor 50 of the main server 12is illustratively operable to process CUSTID by searching the customeraccount data 404 for a matching CUSTID to identify the associatedcustomer. In some embodiments in which items ordered by customers fromone or more product/service departments are associated with and trackedby the processor 50 in accordance with the EMS program described above,CUSTID may be the EMSID stored in the customer account data 404. Inother embodiments in which items ordered by customers from one or moreproduct/service departments are not associated with and tracked by theprocessor 50 in accordance with the EMS program described above, but areinstead associated with and tracked by the processor in accordance withordered item data stored in the customer account data 404 or otherdatabase, CUSTID may be the name or other identifier of the customerthat ordered the one or more items.

In any case, following execution of step 712 of the process 700illustrated in FIG. 7, the processor 50 has identified the customerassociated with the mobile communication device 16 (or 1010) whichtransmitted the one or more wireless signals at step 708, i.e., CUSTID,and has also identified the brick-and-mortar store (BMID) at which thewireless signal broadcasting device detected by the customer's mobilecommunication device 16 at step 704 is located as well as the wirelesssignal broadcasting device type (BT) and/or location (BID) of thewireless signal broadcasting device relative to the identifiedbrick-and-mortar location. Some embodiments of the process 700illustratively include steps 714 and 716 to which the process 700advances following execution of step 712, and in such embodiments theprocessor 50 is illustratively operable at step 714 to determine whetherthe type of wireless signal broadcasting device, BT, detected by thecustomer's mobile communication device 16 at step 704 is a storeentrance (SE) wireless signal broadcasting device, and if so, to advanceto step 716 where the processor 50 is operable to execute a storeentrance process. In some such embodiments, the process 700 furtherillustratively includes steps 718 and 720, and the process 700 advancesto step 718 to determine whether the type of wireless signalbroadcasting device, BT, detected by the customer's mobile communicationdevice 16 at step 704 is a product/service department (PSD) wirelesssignal broadcasting device if the processor 50 has determined at step714 that the wireless signal broadcasting device detected by thecustomer's mobile communication device 16 at step 708 is not a storeentrance (SE) wireless signal broadcasting device. If, at step 718, theprocessor 50 determines that the type of wireless signal broadcastingdevice, BT, detected by the customer's mobile communication device 16 atstep 704 is a product/service department (PSD) wireless signalbroadcasting device, the process 700 advances to step 720 where theprocessor 50 is operable to execute a product/service department (PSD)monitoring process. Further in some such embodiments, the process 700illustratively includes steps 722 and 724, and the process 700 advancesto step 722 to determine whether the type of wireless signalbroadcasting device, BT, detected by the customer's mobile communicationdevice 16 at step 704 is a curb-side delivery (CSD) wireless signalbroadcasting device if the processor 50 has determined at step 718 thatthe wireless signal broadcasting device detected by the customer'smobile communication device 16 (or 1010) at step 708 is not aproduct/service department (PSD) wireless signal broadcasting device.If, at step 722, the processor 50 determines that the type of wirelesssignal broadcasting devices, BT, detected by the customer's mobilecommunication device 16 (or 1010) at step 704 is a curb-side delivery(CSD) wireless signal broadcasting device, the process 700 advances tostep 724 where the processor 50 is operable to execute a curb-sidedelivery (CSD) process, and otherwise the process 700 terminates orloops back to step 710.

In some alternative embodiments, the process 700 may omit steps 714, 716and steps 722, 724 while retaining steps 718 and 720, in which case theprocessor 50 is operable to act only on a determination of whether thetype of wireless signal broadcasting devices, BT, detected by thecustomer's mobile communication device 16 at step 704 is a PSD wirelesssignal broadcasting device. In other alternative embodiments the process700 may omit steps 718, 720 and steps 722, 724 while retaining steps 714and 716, in which case the processor 50 is operable to act only on adetermination of whether the type of wireless signal broadcastingdevice, BT, detected by the customer's mobile communication device 16 atstep 704 is PSD wireless signal broadcasting devices. In still otheralternative embodiments the process 700 may omit steps 714, 716 andsteps 718, 720 while retaining steps 722 and 724, in which case theprocessor 50 is operable to act only on a determination of whether thetype of wireless signal broadcasting device, BT, detected by thecustomer's mobile communication device 16 at step 704 is CSD wirelesssignal broadcasting device. In yet other embodiments, the process 700may omit only one of the sets of steps 714, 716 or steps 718, 720 orsteps 722, 724 while retaining the other two sets of steps. In any case,the process 700 advances from step 716, in embodiments which includesteps 714 and 716, or from step 718, in embodiments which may includesteps 718 and 720, or from step 724, in embodiments which may includesteps 722, 724, to steps 726 and 732.

At step 726, the processor 50 is illustratively operable to control thecommunication circuitry 58 of the main server 12 to wirelessly transmitto the mobile communication device 16, 1010 associated with theidentified customer one or more messages generated during execution theprocess 800 (described below) in embodiments of the process 700 whichinclude steps 714 and 716 and/or one or more messages generated atduring execution of the process 900 (described below) in embodiments ofthe process 700 which include steps 718 and 720 and/or the one or moremessages generated during execution of the process 1200 (describedbelow) in embodiments of the process 700 which include steps 722 and724. Thereafter at step 728, the processor 300 of the identifiedcustomer's mobile communication device 16 is operable to receive, viathe communication circuitry 312, the one or more messages wirelesslytransmitted by the main server 12 at step 726, and thereafter at step730 the processor 300 is operable to control the display 322 of theidentified customer's mobile communication device 16, 1010 to displaythe one or more wirelessly received messages. In embodiments in whichthe one or more received messages include one or more virtual discountcoupons, VDC, the processor 300 may further be responsive at step 730 tomanual selection of the displayed one or more virtual discount coupons,e.g., via manual keypad or touch-screen selection, to store the one ormore virtual discount coupons in the memory 304 or data storage 306 ofthe mobile communication device 16, 1010 or in the customer's clippedVDC repository 512 of the server database 502.

At step 732, the processor 50 is illustratively operable to control thecommunication circuitry 58 of the main server 12 to transmit to theelectronic system or device 405 associated with, e.g., located at orwithin, the identified product/service department 26 the one or moremessages generated during execution of the process 800 in embodiments ofthe process 700 which include steps 714 and 716 and/or the one or moremessages generated during execution of the process 900 in embodiments ofthe process 700 which include steps 718 and 720 and/or the one or moremessages generated during execution of the process 1200 in embodimentsof the process 700 which include steps 722 and 724. Thereafter at step734, the processor 400 of the electronic system or device 405 associatedwith the identified product/service department 26 is operable toreceive, via the communication circuitry 412, the one or more messagestransmitted thereto by the main server 12 at step 732, and thereafter atstep 736 the processor 400 is operable to control one or more displaymonitors 420 of the electronic system or device 405 associated with theidentified product/service department 26 to display the one or morewirelessly received messages.

Store Entrance Process

Referring now to FIG. 8, a simplified flow diagram is shown of anembodiment 800 of the store entrance process executed by the processor50 of the main server 12 at step 716 of the process 700 (in embodimentsof the process 700 that include step 716). In one embodiment, theprocess 800 is illustratively stored in the store entrance processingmodule 546 of the ordered item processing module 542 in the form ofinstructions executable by the processor 50 of the main server 12, andthe steps of the process 800 will be described below for purposes ofthis disclosure as being executed by the processor 50 of the mainserver. In some alternate embodiments, e.g., that may or may not includea main server 12, the process 800 may alternatively be stored in thememory 34 (and/or data storage 36) of one or more of the local servers22 ₁-22 _(L) in the form of instructions executable by the processor 30of the one or more local servers 22 ₁-22 _(L), stored in the memory ofone of the point-of-sale systems 24 ₁-24 _(M) within one or more of thebrick-and-mortar enterprise stores in the form of instructionsexecutable by a processor 200 associated with any such point-of-salesystem 24 ₁-24 _(M), stored in the memory 402 (and/or data storage 406)of an electronic system or device 405 associated with one or moreproduct/service departments 26 ₁-26 _(N) in the form of instructionsexecutable by a processor 400 associated with any such electronicsystems or devices 405, and/or stored in a memory and executable by aprocessor of another system external to or supplemental to the system 10illustrated FIG. 1. It will further be understood that the process 800illustrated and described as being executed by one processor/device orone processor/server or one processor/system may alternatively beexecuted by a different processor/device or processor/server orprocessor/system in the system 10, and/or by two or more such processorsin any one or combination of such devices, servers and/or systems, someexamples of which are described above.

The process 800 begins at step 802 where the processor 50 isillustratively operable to search product/service department (PSD) orderrecords stored in the database 502 or other database to access any ofone or more PSD order records associated in the database 502 or otherdatabase with the customer identifier CUSTID, i.e., to locate PSDrecords associated with the identified customer. Illustratively, the PSDorder records include information which associates the identifiedcustomer with one or more items ordered by the identified customer fromthe retail enterprise 11 and also with additional information relatingto the ordered item(s) and product/service department(s) from whichit/they were ordered. In one embodiment, each PSD order record mayinclude, for example, CUSTID, an item identifier, ITEMID, which is acode or other identifier identifying the item(s) ordered by theidentified customer, and additional information which may include, butis not limited to, any one or combination of an order number or otheridentifier, OID, which identifies a number or code associated with orassigned to a particular order, a brick-and-mortar store identifier,BMID, which identifies the brick-and-mortar store of the retailenterprise 11 from which the customer ordered the one or more items, aproduct/service department identifier, PSDID, which identifies theproduct/service department from which the customer ordered the one ormore items, a quantity, Q, which identifies the number of the itemsordered by the customer from the product/service department, a date, OD,which identifies the calendar data (and, optionally, time of day) onwhich the customer ordered the one or more items, a pick up time anddate, PTD, which identifies the calendar date, and in some embodimentsalso a time of day, at which the customer has designated or theproduct/service department has assigned, for in-store pick up by thecustomer of the one or more ordered items, order status, OS, whichidentifies a current status of the order, e.g., Complete, Incomplete,Picked Up, an order completion time, OCT, which identifies an estimatedor average time for the product/service department to complete theorder, and any special instructions, SP. Illustratively, OCT may be usedto set the pickup time/date, PTD, upon receipt of a customer order forone or more items.

In any case, a customer may have ordered one or more items from one ormore product/service departments 26 ₁-26 _(N) in one or morebrick-and-mortar stores of the retail enterprise 11, and at step 802 theprocessor 50 is operable in one embodiment to access any of the PSDorder records associated in the database 502 or other database withCUSTID. In other embodiments, the processor 50 may be operable at step802 to access only those PSD order records associated with CUSTID thathave not been previously fulfilled by one of the product/servicedepartments and picked up by the customer. In either case, followingstep 802, the processor 50 is illustratively operable at step 804 todetermine whether the identified customer has any pending orders. In oneembodiment, the processor 50 is illustratively operable to execute step804 by first determining whether the identified customer has any ordersthat the customer has not already picked up, e.g., by checking the orderstatus, OS, field of each accessed PSD record associated with CUSTID. Ifthe processor 50 determines at step 804 that the customer has at leastone order pending that the customer has not already picked up, e.g., iforder status field, OS, of at least one record is Incomplete or Complete(but not yet picked up), this indicates that the identified customer hasat least one pending order at one of the brick-and-mortar stores 26 ₁-26_(N) of the retail enterprise 11. Otherwise the process 800 follows the“NO” branch of step 804 and terminates.

If the processor 50 determines at step 804 that the identified customerhas at least one pending order at one of the brick-and-mortar stores 26₁-26 _(N) of the retail enterprise 11, the processor 50 is furtherillustratively operable at step 804 to determine whether the identifiedcustomer has at least one pending order at the brick-and-mortar store ofthe retail enterprise identified at step 712 of the process 700. In oneembodiment, the processor 50 is illustratively operable to make thisdetermination by comparing the BMID, determined at step 712 from thewirelessly received signal(s) transmitted by the customer's mobilecommunication device 16 at step 708, with the BMID(s) stored in the oneor more accessed PSD order records associated with the identifiedcustomer, CUSTID. In such embodiments, if the BMID determined at step712 matches any BMID stored in one or more of the accessed PSD orderrecords associated with the identified customer, then the processor 50has determined that the identified customer has at least one pendingorder at the brick-and-mortar store at which the identified customer iscurrently located and through a store entrance of which the identifiedcustomer has just passed. If the BMID determined at step 712 otherwisedoes not match any BMID stored in any of the accessed PSD order recordsassociated with the identified customer, the process 800 follows the“NO” branch of step 804 and terminates. In some alternative embodiments,the processor 50 may be operable at step 804 to determine whether theidentified customer has at least one pending order at thebrick-and-mortar store identified at step 712 of the process 700 byfirst comparing the BMID determined at step 712 with one or more mapsstored in the ordered item processor module 542 or other database whichmap(s) each BMID to corresponding product/service departmentidentifiers, PSDID, identifying one or more product/service departments26 ₁-26 _(N) located at that BMID, for the purpose of identifying a listof such product/service departments 26 ₁-26 _(N) located at the BMIDdetermined at step 712. Thereafter, the processor 50 may be furtheroperable at step 804 to determine whether the identified customer has atleast one pending order at the brick-and-mortar store identified at step712 of the process by comparing the list of one or more PSDIDsassociated with the identified brick-and-mortar store with the PSDID(s)stored in the one or more accessed PSD order records associated with theidentified customer, CUSTID. In such embodiments, if a PSDID in the listof one or more PSDIDs matches any PSDID stored in one or more of theaccessed PSD order records associated with the identified customer, thenthe processor 50 has determined that the identified customer has atleast one pending order at the identified brick-and-mortar store. Thoseskilled in the art will recognize other techniques for determining atstep 804 whether a customer has a pending order at any of one or moreproduct/service departments 26 ₁-26 _(N) in a particularbrick-and-mortar store in which an identified customer has beenidentified as just having entered (e.g., as described with respect tothe process 700 illustrated in FIG. 7) using more, fewer and/ordifferent ones of any one or combination of the different datacomponents of the PSD order records described above by example, oradditionally or alternatively using one or more other data componentsnot described above by example but which may relate to the identifiedcustomer, the identified brick-and-mortar store, one or moreproduct/service departments within the identified brick-and-mortar storeand/or one or more details relating to the item(s) ordered, and whichtherefore be included in one or more PSD order records, and it will beunderstood that any such other techniques using any such additional,alternative or other data components are contemplated by thisdisclosure.

Following a determination by the processor 50 at step 804 that theidentified customer has at least one pending order at the identifiedbrick-and-mortar store which the identified customer has just entered,the process 800 advances to step 806 where the processor 50 isillustratively operable to determine whether one or more of thecustomer's pending orders at one or more of the product/servicedepartments 26 ₁-26 _(N) within the identified brick-and-mortar store isComplete. In the example described above, the PSD order records mayillustratively include an order status (OS) field which reflects thecurrent status of a particular order. When an order for one or moreitems is placed, for example, the OS field may be populated, in someembodiments automatically, with an indicator that the ordered item hasbeen received from the customer but has not yet been produced by thecorresponding product/service department 26, e.g., Incomplete. When theitem is thereafter manufactured, prepared, processed, made or otherwiseproduced by the product/service department 26, an employee in theproduct/service department 26 may illustratively access the electronicsystem or device 405 located in or otherwise associated with theproduct/service department 26 and change the OS field to indicate thatthe item has been produced, e.g., Complete. Illustratively, the OSfield, in embodiments which include an OS field, may further include oneor more additional or alternative status indicators which may beselectively automatically entered into the OS field, examples of whichinclude, but are not limited to, a “Picked Up” status which indicatesthat a completed order has been picked up by the customer, a “Cancelled”status which indicates that the item order was cancelled by the customeror by an employee of the product/service department 26 or the like. Inany case, the processor 50 is illustratively operable at step 806 todetermine whether one or more of the customer's pending orders at one ormore of the product/service departments 26 ₁-26 _(N) within theidentified brick-and-mortar store is Complete by comparing the statusindicator in the OS field with a list of possible status indicators,e.g., Complete (but not yet picked up) and Incomplete.

If the processor 50 determines, at step 806, that the item orderidentified at step 804 is Complete, the process 800 advances to step 820where the processor 50 is illustratively operable to generate orretrieve from the message generation/management module 552 or othermessage database one or more messages, e.g., PSD message 1, to betransmitted to the electronic system or device 405 located in orassociated with the product/service department which produced theidentified item. In the example described above, the PSD order recordsmay illustratively include a product/service department identifier(PSDID) field which has stored therein the identity of the one of theplurality of product/service departments 26 ₁-26 _(N) from which theitem identified at step 804 was ordered and by which the identified itemwas produced. As part of step 820, or as part of any one or more ofsteps 712, 804 or 806, the processor 50 is illustratively operable toidentify the one of the plurality of product/service departments 26 ₁-26_(N) from which the item identified at step 804 was ordered and by whichthe identified item was, or is to be, produced by comparing the code orother information stored in the PSDID field of the PSD order record witha list of the possible product/service departments 26 ₁-26 _(N) locatedat the identified brick-and-mortar store. The PSD message 1 generated orretrieved from a message database at step 820 by the processor 50illustratively identifies, in one embodiment, the product/servicedepartment 26 ₁-26 _(N) identified by the PSDID field of the PSD orderrecord. In any case, the message “PSD message 1” illustratively includesinformation notifying the identified product/service department 26 thatthe identified customer, i.e., CUSTID, has just entered the store andhas a completed order ready for pick up. Upon subsequent transmission ofPSD message 1 to the electronic system or device 405 located in orotherwise associated with the identified product/service department 26,one or more attendants or other employee(s) working in the identifiedproduct/service department are thereby notified in advance, e.g., from afew seconds to several minutes or more, of the identified customer'sarrival at the identified product/service department 26. In someimplementations, this advance notification may, for example, providesufficient time for one or more attendants or other employees of theidentified product/service department 26 to perform one or moreoperations in preparation for the ordered item(s) for pickup.

Following step 820, the processor 50 is illustratively operable at step822 to generate or retrieve from the message generation/managementmodule 552 or other message database or more messages, e.g., Customermessage 1, to be transmitted to the mobile communication device 16 ofthe identified customer. The message “customer message 1” illustrativelyincludes information notifying the identified customer of a completedorder that is ready for pickup at the identified product/servicedepartment 26. Upon subsequent transmission of customer message 1 to thecustomer's mobile communication device 16, the customer is thusnotified, and perhaps reminded, upon entry into the brick-and-mortarstored of the one or more pending ordered items.

If, at step 806, the processor 50 determines that the item orderidentified at step 804 is not Complete, the process 800 advances, insome embodiments in which not Complete means Incomplete, to step 808. Inthe example described above, the PSD order records may illustrativelyinclude a pickup time and/or date identifier (PTD) field which hasstored therein a scheduled calendar date, and in some embodiments also atime of day, at which the identified customer is to pick up the ordereditem(s) and/or at or after which the ordered item(s) are to be availablefor customer pick up. In some such embodiments, the customer may specifythe PTD identifier and in other embodiments an attendant or otheremployee of a product/service department (or other employee of theretail enterprise 11) may do so. In still other embodiments, theprocessor 50 may automatically populate the PTD field based on atypical, average or other predefined time required by theproduct/service department 26 to produce the ordered item(s) from thetime of the order, e.g., the OCT time described above. In any case, insome such embodiments in which the PSD order records include the PTDfield, the process 800 illustratively includes step 808, and theprocessor 50 is operable at step 808 to compare the current time anddate, CTD, with the PTD identifier stored in the PTD field of the PSDorder record. If the CTD is less than PTD, then the scheduled dateand/or time of customer pick up, or scheduled data and/or time beyondwhich the customer may pick up, the ordered item(s) has not yet arrived,and the process 800 follows the “YES” branch of step 808 and advances tostep 30. Otherwise, the process 800 advances, in some embodiments, tostep 810.

In the example described above, the PSD order records may illustrativelyinclude an order completion time (OCT) field which has stored therein atypical, average or other predefined time required by theproduct/service department 26 to produce the ordered item(s) from thetime of the order. In some such embodiments, the OCT field may bepopulated by an attendant or other employee of the product/servicedepartment 26 (or other employee of the retail enterprise 11), and inother embodiments the OCT field may be automatically populated by theprocessor 50 based on stored OCT times for various items produced by oneor more of the product/service departments 26 ₁-26 _(N). In any case, insome such embodiments in which the PSD order records include the OCTfield, the process 800 illustratively includes step 810, and theprocessor 50 is operable at step 810 to compare the order completiontime stored in the OCT field with a time value, T. In some embodiments,the time value T is an estimated or measured, typical or average, timethat it takes a typical customer to travel from the store entrance,i.e., the location at or near which the wireless signal broadcastingdevice is located which was detected by the customer's mobilecommunication device 16 at step 704 of the process 700 illustrate inFIG. 7, to the product/service department 26 at which the identifiedcustomer has a pending order. In some alternative embodiments, the timevalue T may be an estimated or measured, typical or average, time spentby the identified customer shopping at the identified brick-and-mortaroutlet of the retail enterprise 11. In such embodiments, the amounts oftime spent by the identified customer shopping at the identifiedbrick-and-mortar store in previous shopping trips may be stored in thecustomer's purchase history 508, and in some such embodiments the timevalue T may be estimated or computed based on such information. In otherembodiments, the amount of time spent by the identified customershopping at the identified brick-and-mortar outlet of the retailenterprise 11 may be estimated or computed based on that of a typical oraverage customer of the retail enterprise 11. In any case, if theprocessor 50 determines at step 810 that OCT is less than or equal tothe time value T, this means that the order completion time, OCT, isless than the travel time, T, of the identified customer from the storeentrance to the product/service department 16 at which the identifiedcustomer has an order pending or is less than the average shopping time,T, of the identified customer in the identified brick-and-mortar store.In either case, the process 800 illustratively advances to step 812where the processor 50 is operable to generate or retrieve from themessage generation/management module 552 or other message database oneor more messages, e.g., PSD message 2, to be transmitted to theelectronic system or device 405 located in or associated with theproduct/service department which produced the identified item. The PSDmessage 2 generated or retrieved from a message database at step 812 bythe processor 50 illustratively identifies, in one embodiment, theproduct/service department 26 ₁-26 _(N) identified by the PSDID field ofthe PSD order record. In some alternative embodiments, identification ofthe product/service department 26 ₁-26 _(N) from which the itemidentified at step 804 was ordered and by which the identified item was,or is to be, produced takes place at step 728 of the process 700 whichwill be described in greater detail hereinafter. In any case, themessage “PSD message 2” illustratively includes information notifyingthe identified product/service department 26 that the identifiedcustomer, i.e., CUSTID, has just entered the store and has an incompleteitem order that is overdue, and illustratively further includesinstructions to complete the pending order immediately. In someembodiments, information relating to the OCT value and/or the timevalue, T, may also be included in the PSD message 2. Upon subsequenttransmission of PSD message 2 to the electronic system or device 405located in or otherwise associated with the identified product/servicedepartment 26, one or more attendants or other employee(s) working inthe identified product/service department are thus notified in advance,e.g., from a few seconds to several minutes or more, of the identifiedcustomer's arrival at the identified product/service department 26. Insome implementations, this advance notification may, for example,provide sufficient time for one or more attendants or other employees ofthe identified product/service department 26 to prepare the ordered itemor complete the ordered item prior to an estimated time of arrival ofthe identified employee at the product/service department 26 or prior toan estimated departure by the identified customer from thebrick-and-mortar store 26.

If, at step 810, the processor 50 determines that OCT is greater than orequal to the time value T, this means that the order completion time,OCT, is greater than travel time, T, of the identified customer from thestore entrance to the product/service department 16 at which theidentified customer has an order pending or is less than the averageshopping time, T, of the identified customer in the identifiedbrick-and-mortar store. The product/service department 26 therefore willnot have sufficient time to complete the pending order prior to arrivalof the identified customer at the product/service department 26, orprior to departure by the identified customer from the brick-and-mortarstore, and the process 800 illustratively advances in some suchembodiments to step 814 where the processor 50 is operable to generateor retrieve from the VDC module 550 a virtual discount coupon (VDC). Insome embodiments, the processor 50 is illustratively operable togenerate VDC, e.g., pursuant to instructions stored in the VDC module550, by retrieving a virtual discount coupon from the virtual discountcoupon database 510, and in other embodiments the processor 50 may beoperable to generate VDC, e.g., pursuant to instructions stored in theVDC module 550, from or based on any of one or more differentparameters, examples of which may include, but are not limited to, thecustomer's purchase history stored in the customer purchase historydatabase 508, one or more products currently in inventory andidentifiable as such in the product/service and pricing data 506, one ormore such products currently in excess, one or more seasonal products ininventory, one or more overstocked products, one or more products orservices included in one or more promotions, and the like.

Following step 814, the process 800 illustratively advances to step 816where the processor 50 is illustratively operable to generate orretrieve from the message generation/management module 552 or othermessage database one or more messages, e.g., customer message 2, to betransmitted to the mobile communication device 16 of the identifiedcustomer. The message “customer message 2” illustratively includesinformation notifying the identified customer that the customer'spending order has not been completed and further illustratively includesinformation relating to the virtual discount coupon, VDC, generated atstep 814 or includes the VDC itself. In the former case, the processor50 may be operable as part of step 814 to transfer the generated VDC tothe identified customer's clipped virtual discount coupon repository512, in embodiments in which the identified customer has such a clippedvirtual discount coupon repository 512. In the latter case, the VDC maybe sent directly to the identified customer, as will be described belowwith reference to the remainder of the process 700 illustrated in FIG.7, and in such cases the identified customer may transfer the receivedVDC to the customer's clipped virtual coupon repository 512 if theidentified customer has such a clipped virtual coupon repository 512 andotherwise the identified customer may store the received VDC in thememory 304 or data storage 306 of the customer's mobile communicationdevice 16 for subsequent redemption at a the retail enterprise 11. Insome embodiments, customer message 2 may further include informationrelating to the identity of and/or further details relating to thepending ordered item. Further in some embodiments, the processor 50 maybe operable as part of step 816 to compute or estimate a revisedcompletion date and/or time for the pending ordered item, e.g., based onan order completion time stored in the order completion time (OCT) fieldof the PSD order record in embodiments which include an OCT field, andcustomer message 2 may include in such embodiments information relatingto such a revised completion date. Upon subsequent transmission ofcustomer message 2 to the customer's mobile communication device 16, thecustomer is thus notified of the incomplete status of the customer'spending ordered item, and is illustratively further provided with, ornotified of, a virtual discount coupon redeemable by the customer at theretail enterprise 11.

Following step 816, the process 800 illustratively advances to step 818where the processor 50 is illustratively operable to generate orretrieve from the message generation/management module 552 or othermessage database one or more messages, e.g., PSD message 3, to betransmitted to the electronic system or device 405 located in orassociated with the product/service department which produced theidentified item. As part of step 810, the processor 50 mayillustratively compute or estimate a revised pickup time and/or date(PTD) based on an estimated or computed order completion time, e.g.,stored in the OCT field of the PSD order record in embodiments whichinclude the OCT field, and in such embodiments the PSD message 3generated or retrieved from a message database at step 818 by theprocessor 50 illustratively includes information notifying theidentified product/service department 26 that the pending item orderedby the identified customer is overdue, and may further includeinstructions to complete the ordered item for subsequent pickup by theidentified customer by the revised pickup time and/or date. Uponsubsequent transmission of PSD message 3 to the electronic system ordevice 405 located in or otherwise associated with the identifiedproduct/service department 26, one or more attendants or otheremployee(s) working in the identified product/service department arethereby notified of the incomplete order and, in some embodiments, ofinstructions regarding the revised pickup time and/or date.

In some embodiments, the process 800 may include a step 824, and inother embodiments step 824 may be omitted. Accordingly, step 824 isdepicted in FIG. 8 in dashed-line to represent that step 824 may beoptional. In embodiments which include step 824, the process 800advances to step 824 from step 818, from step 812 and also from step822. Step 824 includes step 826 where the processor 50 is operable todetermine one or more additional items, i.e., in addition to the one ormore ordered item(s), to recommend to the customer. At step 826,information available to the processor 50 includes the present locationof the identified customer, i.e., at or near a, or the, store entranceand, if the customer has one or more ordered items that is/are completeor that can be completed before the customer reaches the identifiedproduct/service department, as determined by the processor 50 at step810, the destination of the customer, i.e., the one of theproduct/service departments 26 ₁-26 _(N) which has the customer'scompleted or nearly completed order. In embodiments in which thecustomer has been provided with one or more virtual discount coupons,e.g., as part of steps 814 and 816, the processor 50 may be operable topredict the customer's destination as an area, or areas, of the store atwhich the item(s) corresponding to the one or more virtual discountcoupons can be found.

In embodiments which include the customer shopping list database 518,for example, the processor 50 is illustratively operable at step 826 toaccess the database 518 to determine whether the identified customer hasany items stored therein. If so, the processor 50 is illustrativelyoperable at step 826 to compare the items in the customer's shoppinglist stored in the database 518 with product location information in thestore location data 514 and determine one or more routes from thecustomer's present location to the customer's destination (or one ormore customer destinations as determined or predicted by the processor50) via which the customer may collect the items in the customer'sshopping list. In some embodiments, the one or more such routes mayinclude a most efficient route which is estimated by the processor 50 tominimize shopping time. Other route strategies may be alternatively oradditionally determined by the processor 50. In some such embodimentsand/or in embodiments which do not include the customer shopping listdatabase 518, the processor 50 may be operable at step 826 to compareitems in the customer's purchase history 508 with product locationinformation in the store location data 514, to determine one or morerecommended items located between the customer's present location andthe customer's destination (or one or more customer destinations asdetermined or predicted by the processor 50) that the customer may needor find useful and determine one or more routes from the customer'spresent location to the customer's destination via which the customermay collect such one or more recommended items. The one or morerecommended items may be or include, for example, but should not belimited to, one or more items that may be used or combined with one ofthe one or more ordered items, one or more items that may be used orcombined with one or more items recently purchased by the customer, oneor more items which the customer periodically purchases and is due topurchase soon, one or more items which the customer typically purchaseswhich are currently discounted, and the like. Those skilled in the artwill recognize other strategies for predicting or otherwise determiningone or more items to recommend to the customer, and it will beunderstood that any such other strategies are contemplated by thisdisclosure. In any case, the process 800 advances from step 826 to step828 where the processor 50 is operable to generate or retrieve from themessage generation/management module 552 or other message database oneor more messages, e.g., customer message 3, to be transmitted to themobile communication device 16 of the identified customer. The message“customer message 3” illustratively includes information identifying theone or more items in the customer's shopping list and/or one or morerecommended items, and information regarding the one or more routesthrough the store to collect such items. In some embodiments, themessage may further include information relating to a virtual discountcoupon, VDC, generated at step 826, or includes the VDC itself, for oneor more such items.

Following step 828 in embodiments which include step 824, and followingstep 812, the “YES” branch of step 808, in embodiments of the process800 which include any such steps, and step 822 in embodiments which donot include step 824, the process 800 advances to step 830 to determinewhether the identified customer has any additional pending orders, e.g.,using the same process(es) described above with respect to step 804. Ifso, the process 800 loops back to step 806, and otherwise the process800 is complete, as it is following the “NO” branch of step 804, and theprocess 800 then returns to step 716 of the process 700 illustrated inFIG. 7.

PSD Monitoring Process

Referring now to FIG. 9, a simplified flow diagram is shown of anembodiment 900 of the PSD monitoring entrance process executed by theprocessor 50 of the main server 12 at step 720 of the process 700 (inembodiments of the process 700 that include step 720). In oneembodiment, the process 900 is illustratively stored in the PSDmonitoring module 548 of the ordered item processing module 542 in theform of instructions executable by the processor 50 of the main server12, and the steps of the process 900 will be described below forpurposes of this disclosure as being executed by the processor 50 of themain server. In some alternate embodiments, e.g., that may or may notinclude a main server 12, the process 900 may alternatively be stored inthe memory 34 (and/or data storage 36) of one or more of the localservers 22 ₁-22 _(L) in the form of instructions executable by theprocessor 30 of the one or more local servers 22 ₁-22 _(L), stored inthe memory of one of the point-of-sale systems 24 ₁-24 _(M) within oneor more of the brick-and-mortar enterprise stores in the form ofinstructions executable by a processor 200 associated with any suchpoint-of-sale system 24 ₁-24 _(M), stored in the memory 402 (and/or datastorage 406) of an electronic system or device 405 associated with oneor more product/service departments 26 ₁-26 _(N) in the form ofinstructions executable by a processor 400 associated with any suchelectronic systems or devices 405, and/or stored in a memory andexecutable by a processor of another system external to or supplementalto the system 10 illustrated FIG. 1. It will further be understood thatthe process 900 illustrated and described as being executed by oneprocessor/device or one processor/server or one processor/system mayalternatively be executed by a different processor/device orprocessor/server or processor/system in the system 10, and/or by two ormore such processors in any one or combination of such devices, serversand/or systems, some examples of which are described above.

The process 900 begins at step 902 where the processor 50 isillustratively operable to search product/service department (PSD) orderrecords stored in the database 502 or other database and access any ofone or more PSD order records associated in the database 502 or otherdatabase with the customer identifier CUSTID, i.e., to access one ormore PSD order records associated with the identified customer.Illustratively, the processor 50 is operable to execute step 902 asdescribed hereinabove with respect to step 802 of the process 800illustrated in FIG. 8, and the one or more PSD order records stored inthe database 502 or other database may illustratively have storedtherein any one or combination of the items of information describedabove. Those skilled in the art will recognize, however, that otherembodiments of the one or more PSD order records may alternativelyinclude more, fewer and/or other information items, and it will beunderstood that any such alternative embodiments of the one or more PSDorder records are contemplated by this disclosure.

The process 900 advances from step 902 to step 904 where the processor50 is illustratively operable to determine whether the identifiedcustomer has any pending orders at the product/service department 26,PSDID, at or near which the identified customer is currently located. Itshould be noted that the process 900 is illustratively executed by theprocessor 50 in embodiments of the process 700 which include step 720,and step 720 is executed by the processor 50 if the wireless signalbroadcasting device 424 whose wireless identification signal(s) was/weredetected by the customer's mobile communication device 16 at step 704 isa PSD wireless signal broadcasting device as described above withrespect to FIG. 7. As part of step 712 (as described above), or as partof step 920 and/or either of steps 904 or 906, the processor 50 isfurther illustratively operable to identify or determine aproduct/service area 26 ₁-26 _(N) within the identified brick-and-mortarstore at or near which the identified PSD wireless signal broadcastingdevice 424 is located. Illustratively, the processor 50 is operable tomake such a determination by processing the wireless signal broadcastingdevice identity code, BID, associated in the ordered item processingmodule 542 or other database with the UID of the wireless signalbroadcasting device 424 to determine therefrom the identity, PSDID, ofthe one of the various product/service areas 26 ₁-26 _(N) within theidentified brick-and-mortar store at or near which the identifiedcustomer is currently located.

The processor 50 is further illustratively operable at step 904 todetermine whether the identified customer has any pending orders at theproduct/service department 26, PSDID, at or near which the identifiedcustomer is currently located, i.e., at the identified PSDID, bycomparing identified PSDID with the PSDIDs stored in the PSDID fields ofthe one or more PSD order records found at step 902 to be associatedwith the identified customer. If, at step 904, the processor 50determines that the identified PSDID matches a PSDID stored in the PSDIDfield of at least one of the PSD order records associated with theidentified customer, this means that the identified customer is locatedat or near an identified product/service department 26 from and at whichthe customer has at least one order pending, and the process 900advances from step 904 to step 906. Otherwise, the process 900terminates and returns to step 720 of the process 700. Those skilled inthe art will recognize other techniques for determining at step 904whether a customer has a pending order at the product/service department26, PSDID, at or near which the identified customer is currently locatedusing more, fewer and/or different ones of any one or combination of thedifferent data components of the PSD order records described above byexample, or additionally or alternatively using one or more other datacomponents not described above by example but which may relate to theidentified customer, the identified brick-and-mortar store, one or moreproduct/service departments within the identified brick-and-mortar storeand/or one or more details relating to the item(s) ordered, and whichtherefore be included in one or more PSD order records, and it will beunderstood that any such other techniques using any such additional,alternative or other data components are contemplated by thisdisclosure.

Following a determination by the processor 50 at step 904 that theidentified customer has at least one pending order at theproduct/service department 26, PSDID, at or near which the identifiedcustomer is currently located, the process 900 advances to step 906where the processor 50 is illustratively operable to determine whetherone or more of the customer's pending orders at the identifiedproduct/service department 26 within the identified brick-and-mortarstore is Complete. The processor 50 is illustratively operable at step906 to determine whether one or more of the customer's pending orders atthe product/service department 26, PSDID, at or near which theidentified customer is currently located is Complete by comparing thestatus indicator in the OS field with a list of possible statusindicators, e.g., Complete (but not yet picked up) and Incomplete, asdescribed above with respect to step 804 of the process 800.

If the processor 50 determines, at step 906, that the item orderidentified at step 904 is Complete, the process 900 advances to step 918where the processor 50 is illustratively operable to generate orretrieve from the message generation/management module 552 or othermessage database one or more messages, e.g., customer message 4, to betransmitted to the mobile communication device 16 of the identifiedcustomer. The customer message 4 generated or retrieved from the messagegeneration/management module 552 or other message database at step 918by the processor 50 illustratively includes information notifying theidentified customer that an order placed by the customer for one or moreitems from the identified product/service department 26 is complete andready for pick up. In some embodiments, customer message 4 may furtherinclude one or more messages notifying the identified customer that anattendant or other employee at the identified product/service department26 will assist the identified customer promptly or momentarily. In someembodiments, one or more data records may be stored in the database 502which identify names and/or photographs and work schedules of attendantsand/or other employees of the various product/service departments 26₁-26 _(N) within the retail enterprise 11, and in such embodimentscustomer message 4 may further include information identifying theattendant or other employee at the identified product/service department26, e.g., in the form of the attendant's name and/or photograph, whichwill assist the identified customer. In any case, upon subsequenttransmission of customer message 4 to the customer's mobilecommunication device 16, the customer is thus notified upon arrival atthe identified product/service department 26 of an order previouslyplaced by the identified customer with the identified product/servicedepartment 26 that is now complete and ready for pick up.

Following step 918, the process 900 advances to step 920 where theprocessor 50 is illustratively operable to generate or retrieve from themessage generation/management module 552 or other message database oneor more messages, e.g., PSD message 4, to be transmitted to theelectronic system or device 405 located in or associated with theproduct/service department which produced the identified item. Themessage “PSD message 4” illustratively includes information notifyingpersonnel in the identified product/service department 26 that theidentified customer, i.e., CUSTID, has arrived or is present at theidentified product/service department 26 and has a completed order atthe identified product/service department 26 that is ready for pick up.Upon subsequent transmission of PSD message 4 to the electronic systemor device 405 located in or otherwise associated with the identifiedproduct/service department 26, one or more attendants or otheremployee(s) working in the identified product/service department arethereby notified of the identified customer's arrival at the identifiedproduct/service department 26. In some implementations, thisnotification may, for example, may alert one or more attendants or otheremployees of the identified product/service department 26 to perform oneor more operations to ready the ordered item(s) for pickup and/or togreet the identified customer in or at the identified product/servicedepartment 26. The process 900 advances from step 920, in someembodiments, to step 824.

If, at step 906, the processor 50 determines that the item orderidentified at step 904 is not Complete, the process 900 advances, insome embodiments in which not Complete means Incomplete, to step 908where the processor 50 is illustratively operable to compare the currenttime and date, CTD, with a pick up time and/or date, PTD identifierstored in a PTD field of the PSD order record as described above withrespect to step 808 of the process 800. If, at step 908, the processor50 determines that CTD is less than PTD, then the scheduled date and/ortime of customer pick up, or scheduled data and/or time beyond which thecustomer may pick up, the ordered item(s) has not yet arrived, and theprocess 900 follows the “YES” branch of step 908 and advances to step922. Otherwise, the process 900 advances, in some embodiments, to step910.

If the process 900 arrives at step 910, the processor 50 has determinedthat the identified product/service department 26 was unable tocomplete, i.e., fulfill, the identified order for the identifiedcustomer by the scheduled pick up date and/or time, and the processor 50is illustratively operable at step 910 to determine whether theprocessor 50 has provided a virtual discount coupon, VDC, to theidentified customer during the customer's current visit to thebrick-and-mortar store, e.g., as part of the process 800 in embodimentswhich include both of the processes 800 and 900. If so, the process 900advances, in some embodiments, to step 824. Otherwise, the process 900illustratively advances in some such embodiments to step 912 where theprocessor 50 is operable to generate or retrieve from the VDC module 550a virtual discount coupon (VDC). In some embodiments, the processor 50is illustratively operable at step 912 to generate VDC, e.g., pursuantto instructions stored in the VDC module 550, by retrieving a virtualdiscount coupon from the virtual discount coupon database 510, and inother embodiments the processor 50 may be operable to generate VDC,e.g., pursuant to instructions stored in the VDC module 550, from orbased on any of one or more different parameters, examples of which mayinclude, but are not limited to, the customer's purchase history storedin the customer purchase history database 508, one or more productscurrently in inventory and identifiable as such in the product/serviceand pricing data 506, one or more such products currently in excess, oneor more seasonal products in inventory, one or more overstockedproducts, one or more products or services included in one or morepromotions, and the like.

Following step 912, the process 900 illustratively advances to step 914where the processor 50 is illustratively operable to generate orretrieve from the message generation/management module 552 or othermessage database one or more messages, e.g., customer message 2described above, to be transmitted to the mobile communication device 16of the identified customer. Thereafter at step 916, the processor 50 isillustratively operable to generate or retrieve from the messagegeneration/management module 552 or other message database one or moremessages, e.g., PSD message 3 described above, to be transmitted to theelectronic system or device 405 located in or associated with theproduct/service department which produced the identified item.

In some embodiments, the process 900 may include step 824 describedabove with respect to the process 800 illustrated in FIG. 8, and inother embodiments step 824 may be omitted from the process 900.Accordingly, step 824 is depicted in FIG. 9 in dashed-line to representthat step 824 may be optional. In embodiments which include step 824,the process 900 advances to step 824 from step 916, from step 920, andthe “YES” branch of step 910. In such embodiments which include step824, the processor 50 is illustratively operable to execute steps 826and 828 as described above with respect to the process 800 illustratedin FIG. 8. Following step 828 in embodiments which include step 824, andfollowing step 916 and the “YES” branch of step 908 in embodiments ofthe process 900 which do not include step 824, the process 900 advancesto step 922 to determine whether the identified customer has anyadditional pending orders, e.g., using the same process(es) describedabove with respect to step 904. If so, the process 900 loops back tostep 906, and otherwise the process 900 is complete, as it is followingthe “NO” branch of step 904, and the process 900 then returns to step720 of the process 700 illustrated in FIG. 7.

System Components—Embodiment 2

Referring now to FIG. 10, an embodiment of the system 10 of FIG. 1 isshown in which one of the product/service departments 26 ₁-26 _(N)illustrated in FIG. 1 is implemented in the form of a curb-side deliveryservice at one (or more) of the brick-and-mortar stores 25 of the retailenterprise 11. The embodiment illustrated in FIG. 10 includes some ofthe components illustrated in FIG. 1, and detailed descriptions of suchcomponents will be omitted here for brevity. For example, the embodimentshown in FIG. 10 illustratively includes one of the local hub servers 22associated with one of the brick-and-mortar stores 25 communicativelycoupled to one or more of the wireless signal broadcasting devices 28₁-28 _(P) (a subset 28 ₁-28 ₄ of such wireless signal broadcastingdevices 28 ₁-28 _(P) is illustrated in FIG. 10), communicatively coupledto the private network 20 and communicatively coupled to one of theproduct/service departments implemented in the form of a curb-sidedelivery service department 26. In embodiments which include the mainserver 12, the private network 20 is communicatively coupled to the mainserver 12 as shown and described with respect to FIG. 1. In otherembodiments which do not include the local hub server 22 as describedabove, the main server 12 may be communicatively coupled, via theprivate network 20, directly to the components illustrated in FIG. 10 asbeing coupled to the local hub server 22.

The curb-side delivery service department 26 may include any one orcombination of the components illustrated and described above withrespect to FIG. 4. As illustrated in FIG. 10, for example, the curb-sidedelivery service department illustratively includes one or more displaymonitors 420. The curb-side delivery service department 26 may furtherinclude one or more intercom systems 421, one or more telephones 423and/or one or more point-of-sale systems 24. The one or morepoint-of-sale systems 24 may illustratively include one or anycombination of the components illustrated and described above withrespect to FIG. 2. The curb-side delivery service department 26 mayalternatively or additionally include any additional one or more of thecomponents illustrated and described above with respect to FIG. 4.

In the embodiment illustrated in FIG. 10, the brick-and-mortar store 25includes at least one entrance/exit door 25A, e.g., adjacent to or nearthe curb-side delivery service department 26, to/from a drive-through,ordered item delivery area 1000 located outside of, and illustrativelyadjacent to, the brick-and-mortar store 25. The drive-through, ordereditem delivery area 1000 illustratively includes a drive-through lane1002 accessible by conventional motor vehicles 1004, and an associateditem delivery area 1006 positioned between the drive-through lane 1002and the brick-and-mortar store 25. At least one entrance/exit door 25Ais positioned to provide access by store employees to and between thecurb-side delivery service department 26 and the item delivery area1006. It will be understood that the drive-through, ordered itemdelivery area 1000 may include any number of drive-through lanes andassociated item delivery areas, and one additional such drive-throughlane 1002′ and associated item delivery area 1006′ are illustrated inFIG. 10 by dashed-line representation as being positioned adjacent tothe drive-through lane 1002 such that the drive-through lane 1002′ andassociated item delivery area 1006′ are positioned in parallel with thedrive-through lane 1002 and associated item delivery area 1006 and withthe drive-through lane 1002 and associated item delivery area 1006located between the brick-and-mortar store 25 and the drive-through lane1002′ and associated item delivery area 1006′. Other non-parallelconfigurations of multiple such drive-through lanes and associated itemdelivery areas will occur to those skilled in the art, and it will beunderstood that any such non-parallel configurations are contemplated bythis disclosure.

One or more waiting areas 1018 may located adjacent to thebrick-and-mortar store 25 and/or the drive-through, ordered itemdelivery area 1000. The one or more waiting areas 1018 illustrativelyinclude(s) at least one parking location sized to accommodate a motorvehicle 1004. Customers awaiting delivery of one or more ordered itemsmay park their motor vehicle 1004 at any such parking location, and acurb-side delivery service department employee may deliver thecustomer's one or more ordered items to the customer's motor vehicle1004 at the parking location of the waiting area 1018 when thecustomer's one or more ordered items are ready for delivery. In someembodiments, the waiting area 1018 may be used to divert customershaving large and/or incomplete orders from the drive-through lane 1002(and/or drive-through lane 1002′) in order to free up the drive-throughlane 1002 and associated item delivery area 1006 (and/or thedrive-through lane 1002′ and the associated item delivery area 1006′)for the service of other customers in the drive-through lane 1002 queue,e.g., the customer in the motor vehicle 1004′. In other embodiments, thewaiting area 1008 may be used for all deliveries of ordered items by thecurb-side delivery service department 26 to customers waiting in theirmotor vehicles.

In any case, the drive-through lane(s) 1002 and associated item deliveryarea(s) 1006 may be sized to accommodate any number of curb-side itemdelivery locations, and in the embodiment illustrated in FIG. 10 thedrive-through lanes 1002 and 1002′ and associated item delivery areas1006 and 1006′ respectively are sized to accommodate two such itemcurb-side, item delivery locations CS1 and CS2. At least one of thecurb-side item delivery locations in each of the one or more itemdelivery areas illustratively includes at least one conventionalcall-box that is communicatively coupled to the local hub server 22 (orto a processor 400 in the curb-side delivery service department 26 ordirectly to the main server 12. In the embodiment illustrated in FIG.10, for example, one such call-box 1008 is located adjacent to,connected to or integral with the wireless signal broadcasting device 28₁ at the curb-side item delivery location CS1, which is the firstcurb-side item delivery location in the item delivery location 1006queue associated with the drive-through lane 1002. In embodiments whichinclude the drive-through lane 1002′, as shown by dashed-linerepresentation in FIG. 10, a call-box 1008′ may likewise be locatedadjacent to, connected to or integral with the wireless signalbroadcasting device 283 at the curb-side item delivery location CS3. Itwill be understood, however, that one or more such call-boxes may bealternatively or additionally located at or adjacent to any of the oneor more curb-side delivery locations defined in any of the one or moreitem delivery locations.

In some embodiments which include one or more curb-side delivery servicedepartments 26, the mobile communication devices 16 illustrativelyoperate as described hereinabove with respect to FIGS. 1-9 to wirelesslydetect/receive signals broadcast by one or more of the wireless signalbroadcasting devices 28 ₁-28 _(P), 424 and to communicate with the mainserver 12, local hub server 22 and/or product/server department 26.Alternatively or additionally, any motor vehicle 1004 used to transporta customer through a drive-through lane 1002, 1002′ may include anon-board communication device 1010, and any such communication device1010 may be configured to operate as the mobile communication devices 16described hereinabove to wirelessly detect/receive signals broadcast byone or more of the wireless signal broadcasting devices 28 ₁-28 _(P), 44and to communicate with the main server 12, local hub server 22 and/orproduct/server department 26. For purposes of the curb-side deliveryservice department(s), the term “mobile communication device” may thusrefer to a mobile communication device 16 carried by a customer and/or amobile communication device 1010 carried by a motor vehicle 1004, andoperation of such a mobile communication device as described herein maybe accomplished with either or both of a mobile communication device 16and a mobile communication device 1010.

In embodiments which include at least one call-box 1008, such a call-boxillustratively includes conventional intercom components, e.g.,microphone, speaker, etc., and is configured to provide for intercomcommunications with the intercom system 421 located in or at thecurb-side delivery service department 26. Such intercom components mayillustratively be manually actuatable, e.g., via a push-button or othersuch mechanism located on or adjacent to the call-box 1008, or mayalternatively be automated such that the occupant of a vehicle 1010 maycommunicate directly with an employee of the curb-side delivery servicedepartment 26 via the call-box 1008 without actuating any mechanismassociated with the call-box 1008. In other embodiments which include atleast one call-box 1008, such a call-box may alternatively include moresophisticated communication and/or non-communication functions, examplesof which may include, but are not limited to, any one or combination ofa paging function, a payment transport function, e.g., to transport acredit card or cash to/from the curb-side delivery service department 26for payment of curb-side delivered items purchased from the retail store25, a payment interface, e.g., similar or identical to the paymentinterface 214 and/or 416 described above, local-area wirelesscommunication capability for establishing wireless communicationsbetween the call-box 1008 and one of the mobile communication devices 16and/or 1010, a display monitor to display items for purchase, paymenttransaction(s), images and/or real-time video-streaming of one or morecurb-side delivery service department employees, and/or the like.

In the embodiment illustrated in FIG. 10, one or more of thebrick-and-mortar store employees may have and carry an employee mobilecommunication device 1012 which may be used to communicate withcustomers having one or more ordered items, i.e., via the customer'smobile communication device 16 and/or 1010. In such embodiments, theemployee mobile communication device(s) may be configured to access thepublic network 14 via a conventional local area network, e.g., WiFinetwork 1014. It will be understood that one or more such employeemobile communication devices 1012 may alternatively or additionally beused to communicate with customers having one or more ordered items viathe customer's mobile communication device 16 in any of the embodimentsillustrated and described with respect to FIGS. 1-9.

In one example embodiment, the drive-through lane 1002 and associateditem delivery area 1006 (and/or the drive-through lane 1002′ andassociated item delivery area 1006′) includes a single curb-sidedelivery location CS1 (and/or CS3), and in such embodiments the mobilecommunication device 16 and/or 1010 in the motor vehicle 1004, thewireless signal broadcasting device 28 ₁ and the main server 12 are alloperable as described hereinabove with respect to steps 702-722 of FIG.7 to notify the main server 12 of the identity of the customer in themotor vehicle 1004 presently located at the curb-side delivery locationCS1 (and/or CS3). In other embodiments, the drive-through lane 1002 andassociated item delivery area 1006 (and/or the drive-through lane 1002′and associated item delivery area 1006′) includes multiple curb-sidedelivery locations, e.g., CS1 and CS2 (and/or CS3 and CS4). In suchembodiments, the mobile communication device 16 and/or 1010 in the motorvehicle 1004, the wireless signal broadcasting device 28 ₁ and the mainserver 12 are all operable as described hereinabove with respect tosteps 702-722 of FIG. 7 to notify the main server 12 of the identity ofthe customer in the motor vehicle 1004 presently located at thecurb-side delivery location CS1 (and/or CS3) as well as the identitiesof customers in motor vehicles located at the other curb-side deliverylocations, e.g., the identity of the customer in the motor vehicle 1004′presently located at the curb-side delivery location CS2. In some suchembodiments, the curb-side delivery service department 26 may beconfigured and operable to simultaneously, i.e., in parallel, processand carry out delivery of ordered items to the motor vehicles of allsuch customers identified at any of the multiple curb-side deliverylocations. In other embodiments, the curb-side delivery servicedepartment 26 may be configured and operable to process and carry outdelivery of ordered items only to the customer in the motor vehicleidentified at the first curb-side delivery location in the queue, e.g.,CS1 and/or CS3. In such embodiments, identification of the customers atany of the remaining multiple curb-side delivery locations may be usedby the curb-side delivery service department 26 to provide the curb-sidedelivery department 26 with some amount of time in which to prepareordered items for subsequent delivery to such customers as they advancein the drive-through lane 1002 (and/or 1002′) queue to the firstcurb-side delivery location, e.g., CS1 and/or CS3.

In some embodiments, the ordered item processing module 542 and/or theserver database 502 may include geofence data which illustrativelyincludes geographic coordinates defining (a) geofence(s) about one ormore of the brick-and-mortar stores 25. An example of one such geofence1016 is illustrated in FIG. 10 as surrounding the perimeter of thebrick-and-mortar store 25. In some embodiments, such a geofence 1016 maydefine geographic coordinates surrounding, or at least partiallysurrounding, the perimeter of a combination of the brick-and-mortarstore 25 and its co-located parking and/or vehicle entrance area(s). Inother embodiments, the geofence 1016 may define geographic coordinatessurrounding, or at least partially surrounding, only the perimeter of acombination of the brick-and-mortar store 25 and its co-locateddrive-through, ordered item delivery area 1000. In still otherembodiments, the geofence 1016 may define geographic coordinatessurrounding, or at least partially surrounding, only the perimeter ofthe drive-through, ordered item delivery area 1000. In any suchembodiment(s), the ordered item (OI) application 310 and/or any othermobile application installed on a customer's mobile communication device16 and/or 1010 for any other of multiple enterprise membership serviceshosted and managed by the main server 12, may include a locationservices feature which, if previously consented to by the user of themobile communication device 16 and/If 1010, allows tracking of thegeographic location of the mobile communication device 16 and/or 1010.In such embodiments, the main server 12 is illustratively operable tomonitor the location of any such mobile communication device 16 and/or1010, and determine when the mobile communication device 16 and/or 1010has crossed the geofence 1016. An example process 1100 for identifyingcustomers at brick-and-mortar stores 25 of the retail enterprise 11 thathave crossed the geofence 1016 is illustrated in FIG. 11.

One or more additional position identification devices 28 _(F)-28 _(G)may be implemented in various additional areas 1020 about the store 25,e.g., in one or more customer parking areas, one or more lanes leadingto the ordered item delivery area 1000, etc., as illustrated in FIG. 10.In some embodiments, in addition to or alternatively to one or more ofthe position identification devices 28 ₁-28 _(P) implemented in theordered item delivery area 1000 and/or one or more additional areasabout the store 25, one or more cameras, e.g., 1022 and 1022′, may beimplemented in the ordered item delivery area 1000 and/or in one or moreadditional areas 1020, and such one or more cameras, e.g., 1022, 1022′,is/are illustratively coupled to the local hub server 22, or coupleddirectly to the main server 12, for providing images and/or video ofcustomer traffic in the ordered item delivery area 1000 and/or the oneor more additional areas 1020. In some alternative embodiments, the oneor more cameras, e.g., 1022, 1022′, may not be coupled to the local hubserver 22 or the main server 12, but may instead be configured towirelessly transmit images and/or video to the local hub server 22and/or to the main server 12.

Customer Identification Process—Embodiment 2

As indicated by the framework of the process 1100 illustrated in FIG.11, a portion of the process 1100, i.e., the portion to the left of thecentral vertical line and centered under the heading “MCD,”illustratively represents one or more software applications executed bythe processor 300 of a customer's mobile communication device 16 (or1010), i.e., one of the mobile communication devices 16 ₁-16 _(J) (or1010) associated with a customer which has one or more pending ordersfor one or more items in one or more of the product/service departments26 ₁-26 _(N) of one of the brick-and-mortar stores 25 ₁-25 _(L) of theretail enterprise 11. In one embodiment, this portion of the process1100 is or includes the ordered item (OI) application module 310 storedin the memory 304 (and/or data storage 306) of the customer's mobilecommunication device 16, 1010 (see FIG. 3A) in the form of instructionsexecutable by the processor 300 of the customer's mobile communicationdevice 16, 1010. The process steps of this portion of the process 1100will be described below for purposes of this disclosure as beingexecuted by the processor 300 of the customer's mobile communicationdevice 16 1010.

Another portion of the process 1100, i.e., the portion to the right ofthe central vertical line in FIG. 11, and centered under the heading“Main Server,” illustratively represents one or more softwareapplications executed by the processor 50 of the main server 12. In oneembodiment, this portion of the process 1100 is or includes one or moreof the modules, e.g., the ordered item processing module 542, stored inthe Ordered Item Notification Module 540 (see FIG. 5) in the form ofinstructions executable by the processor 50 of the main server 12. Theprocess steps of this portion of the process 1100 will be describedbelow for purposes of this disclosure as being executed by the processor50 of the main server 12. In some alternate embodiments, e.g., that mayor may not include a main server 12, this portion of the process 1100may alternatively be stored in the memory 34 (and/or data storage 36) ofone or more of the local servers 22 ₁-22 _(L) in the form ofinstructions executable by the processor 30 of the one or more localservers 22 ₁-22 _(L), stored in the memory 402 (and/or data storage 406)of one of the curb-side delivery service departments 26 within one ormore of the brick-and-mortar enterprise stores or outlets 25 ₁-25 _(L)in the form of instructions executable by a processor 400 associatedwith any such curb-side delivery service departments 26, and/or storedin a memory and executable by a processor of another system external toor supplemental to the system 10 illustrated FIG. 1. It will further beunderstood that portions of the process 1100 illustrated as beingexecuted by one processor/device or one processor/server or oneprocessor/system may alternatively be executed by a differentprocessor/device or processor/server or processor/system in the system10, and/or by two or more such processors in any one or combination ofsuch devices, servers and/or systems, some examples of which aredescribed above.

In the process 1100 illustrated in FIG. 11, the process 1100 begins atstep 1102 where the processor 50 is illustratively operable to monitorthe location(s) of the mobile communication device(s) 16 ₁-16 _(J), 1010which have the OI application 310 installed thereon and in which thelocation services feature thereof (and/or of any other mobileapplication installed on such a mobile communication device 16 ₁-16_(J), 1010 for any other of multiple enterprise membership serviceshosted and managed by the main server 12) has been activated, e.g.,previously consented to, by the user of the mobile communication device16 ₁-16 _(J), 1010. Thereafter at step 1104, the processor 50 isoperable to determine whether any such mobile communication device 16₁-16 _(J), 1010 has crossed the geofence 1016 of any of thebrick-and-mortar stores 25 ₁-25 _(L) of the retail enterprise, e.g., bycomparing the geolocation of any such mobile communication device 16₁-16 _(J), 1010, e.g., based on geographic location coordinate datareceived by the global positioning system receiver 324 of the mobilecommunication device 16 ₁-16 _(J), 1010 and transmitted to the mainserver 12 by the mobile communication device 16 ₁-16 _(J), 1010, withthe geofence data of the corresponding geofence 1016 stored in the mainserver 12. If not, the process 1100 loops back to step 1102, and if sothe process 1100 advances to step 1106 where the processor 50 isillustratively operable to control the communication circuitry 58 totransmit a wake-up message to that mobile communication device 16 ₁-16_(J), 1010. Thereafter at step 1108, the communication circuitry 312 ofthe mobile communication device 16 ₁-16 _(J), 1010 receives the wake-upmessage, and at step 1110 the processor 300 is responsive to thereceived wake-up message to activate the OI application 310. Thereafterat step 1112, the processor 300 is operable, e.g., pursuant toinstructions executed as part of the activated OI application 310, totransmit one or more wireless signals to the main server 12, e.g., tocontrol the communication circuitry 316 in the device 16 ₁-16 _(J), 1010to wirelessly transmit one or more signals to the main server 12 via thepublic network 14. The one or more wireless signals illustrativelycontain(s) an identification of the customer and/or of the customer'smobile communication device 16 ₁-16 _(J), 1010. The identification ofthe customer may be, for example, the customer's EMSID and/or othercustomer identifier described above that is associated, e.g., in thecustomer account data 504, with the customer's mobile communicationdevice 16 (or 1010). Alternatively or additionally, identification ofthe customer's mobile communication device 16 ₁-16 _(J), 1010 may be,for example, the communication information (CI), e.g., cellulartelephone number and/or other communication identifier, which identifiesthe customer's mobile communication device 16 ₁-16 _(J), 1010 to themain server 12 for the purpose of communicating information from themain server 12 back to the customer's mobile communication device 16₁-16 _(J), 1010.

Following step 1112, the main server 12 is operable at step 1114 toreceive, e.g., via the communication circuitry 58, the one or morewireless signals transmitted by the customer's mobile communicationdevice 16 ₁-16 _(J), 1010 at step 1112, and the processor 50 of the mainserver 12 is thereafter operable at step 1114 to execute the curb-sidedelivery (CSD) process 724 described above with respect to FIG. 7.

In some embodiments, identification of customers having one or moreordered items deliverable via a curb-side delivery service department 26of any of the brick-and-mortar stores 25 ₁-25 _(L) is accomplished usingonly the wireless signal broadcasting devices, e.g., 28 ₁-28 ₄ and/or 28_(F)-28 _(G) illustrated in FIG. 10, e.g., as described hereinabove withrespect to FIG. 7. In other embodiments, such customer identificationmay be accomplished using only geolocation data associated with customermobile communication devices 16 ₁-16 _(J), 1010, e.g., as describedhereinabove with respect to FIG. 11. In still other embodiments, suchcustomer identification may be accomplished using only images and/orvideo produced by the one or more cameras, e.g., 1022, 1022′. In stillfurther embodiments, such customer identification may be accomplishedusing any combination of such devices, systems and/or techniques and/orany one or combination of devices, systems and/or techniques describedhereinabove with respect to FIG. 7. It will be understood thatidentification of customers having one or more ordered items at any ofthe product/service departments 26 ₁-26 _(N) may, for purposes ofexecuting either of the processes illustrated and described with respectto FIGS. 8 and/or 9, be supplemented and/or alternatively accomplishedusing geolocation data associated with customer mobile communicationdevices 16 ₁-16 _(J), 1010, e.g., as described hereinabove with respectto FIG. 11.

Curb-Side Delivery Process

Referring now to FIG. 12, a simplified flow diagram is shown of anembodiment 1200 of the curb-side delivery process 724 executed by theprocessor 50 of the main server 12 at step 724 of the process 700 (inembodiments that include the process 700 and that include step 724 ofthe process 700), and/or at step 724 of the process 1100 (in embodimentsthat include the process 1100). In one embodiment, the process 1200 isillustratively stored in the curb-side delivery processing module 554 ofthe ordered item notification module 540 in the form of instructionsexecutable by the processor 50 of the main server 12, and the steps ofthe process 1200 will be described below for purposes of this disclosureas being executed by the processor 50 of the main server. In somealternate embodiments, e.g., that may or may not include a main server12, the process 1200 may alternatively be stored in the memory 34(and/or data storage 36) of one or more of the local servers 22 ₁-22_(L) in the form of instructions executable by the processor 30 of theone or more local servers 22 ₁-22 _(L), stored in the memory 402 (and/ordata storage 406) of an electronic system or device 405 associated withone or more one of the curb-side delivery service departments 26 withinone or more of the brick-and-mortar enterprise stores 25 ₁-25 _(L) inthe form of instructions executable by a processor 400 associated withany such any such electronic system or device 405, and/or stored in amemory and executable by a processor of another system external to orsupplemental to the system 10 illustrated FIG. 1. It will further beunderstood that the process 1200 illustrated and described as beingexecuted by one processor/device or one processor/server or oneprocessor/system may alternatively be executed by a differentprocessor/device or processor/server or processor/system in the system10, and/or by two or more such processors in any one or combination ofsuch devices, servers and/or systems, some examples of which aredescribed above.

The process 1200 begins at step 1202 where the processor 50 isillustratively operable to search product/service department (PSD) orderrecords stored in the database 502 or other database to access any ofone or more PSD order records associated in the database 502 or otherdatabase with the customer identifier CUSTID, i.e., to locate and accessPSD records associated with the identified customer. Illustratively, theprocessor 50 is operable to execute step 1202 as described hereinabovewith respect to step 802 of the process 800 illustrated in FIG. 8, andthe one or more PSD order records stored in the database 502 or otherdatabase may illustratively have stored therein any one or combinationof the items of information described above which relate to the customerand/or one or more items ordered by the customer for delivery theretovia the curb-side delivery service department 26. Those skilled in theart will recognize, however, that other embodiments of the one or morePSD order records may alternatively include more, fewer and/or otherinformation items, and it will be understood that any such alternativeembodiments of the one or more PSD records are contemplated by thisdisclosure.

The process 1200 advances from step 1202 to step 1204 where theprocessor 50 is illustratively operable to determine whether theidentified customer has any pending orders at the curb-side deliveryservice department 26 of the brick-and-mortar store 25 at which theidentified customer is currently located illustratively as describedabove with respect to steps 804 and 904 of the processes 800 and 900respectively. In embodiments in which the process 1200 is executedbecause the processor 50 has previously determined that the wirelesssignal broadcasting device 28 ₁-28 _(P) whose wireless identificationsignal(s) was/were detected by the customer's mobile communicationdevice 16, 1010 at step 704 is a CSD wireless signal broadcastingdevice, for example, the processor 50 has previously also determined theidentity and location of the corresponding wireless signal broadcastingdevice as well as the identity and location of the brick-and-mortarstore 25 at which the customer is currently located and the identity andlocation of the curb-side delivery service department 26 at theidentified store 25, as described above with respect to the process 700of FIG. 7. In embodiments in which the process 1200 is executed becausethe processor 50 has previously determined that the identifiedcustomer's mobile communication device 16, 1010 crossed the geofence1016, as another example, the processor 50 has likewise also determinedfrom the geofence data the identity and location of the brick-and-mortarstore 25 at which the customer is currently located and the identity andlocation of the curb-side delivery service department 26 at theidentified store 25, as described above with respect to the process 1100of FIG. 11. In one embodiment, the processor 50 is illustrativelyoperable to execute step 1204 by first determining whether theidentified customer has any orders that the customer has not alreadypicked up, e.g., by checking the order status, OS, field of eachaccessed PSD record associated with CUSTID. If the processor 50determines at step 1204 that the customer has at least one order pendingthat the customer has not already picked up, e.g., if order statusfield, OS, of at least one record is Incomplete or Complete (but not yetpicked up), this indicates that the identified customer has at least onepending order at the identified curb-side delivery service department26. Otherwise the process 1200 follows the “NO” branch of step 1204 andreturns to step 724 of the process 700 illustrated in FIG. 7. Thoseskilled in the art will recognize other techniques for determining atstep 1204 whether a customer has a pending order at the curb-sidedelivery service department 26 at or near which the identified customeris currently located using more, fewer and/or different ones of any oneor combination of the different data components of the PSD order recordsdescribed above by example, or additionally or alternatively using oneor more other data components not described above by example but whichmay relate to the identified customer, the identified brick-and-mortarstore, one or more product/service departments within the identifiedbrick-and-mortar store and/or one or more details relating to theitem(s) ordered, and which therefore be included in one or more PSDorder records, and it will be understood that any such other techniquesusing any such additional, alternative or other data components arecontemplated by this disclosure.

Following a determination by the processor 50 at step 1204 that theidentified customer has at least one pending order at the curb-sidedelivery service department 26 of the identified brick-and-mortar store25 at which the customer is currently located, the process 1200 advancesto step 1206 where the processor 50 is illustratively operable todetermine whether one or more of the customer's pending orders at thecurb-side delivery service department 26 within the identifiedbrick-and-mortar store 25 is Complete. In the example described above,the PSD order records may illustratively include an order status (OS)field which reflects the current status of a particular order. Theprocessor 50 is illustratively operable at step 1206 to determinewhether one or more of the customer's pending orders at the curb-sidedelivery service department 26 within the identified brick-and-mortarstore 25 is Complete in such embodiments by comparing the statusindicator in the OS field with a list of possible status indicators,e.g., Complete (but not yet picked up) and Incomplete.

If the processor 50 determines, at step 1206, that the item orderidentified at step 1204 is Complete, the process 1200 advances to step1208 where the processor 50 is illustratively operable to generate orretrieve from the message generation/management module 552 or othermessage database one or more messages, e.g., PSD message 5, to betransmitted to the electronic system or device 405 located in orassociated with the identified curb-side delivery service department 26.In embodiments in which the drive-through, ordered item delivery area1000 includes a single wireless signal broadcasting device, e.g., 28 ₁,and the process 1200 is executed because the processor 50 has previouslydetermined that the wireless signal broadcasting device 28 ₁ whosewireless identification signal(s) was/were detected by the customer'smobile communication device 16, 1010 at step 704 is a CSD wirelesssignal broadcasting device, the message “PSD message 5” illustrativelyincludes information notifying the identified curb-side delivery servicedepartment 26 that the identified customer, i.e., CUSTID, has arrived atthe curb-side, item delivery location CS1 and is awaiting delivery of acompleted order. Upon subsequent transmission of PSD message 5 to theelectronic system or device 405 located in or otherwise associated withthe identified curb-side delivery service department 26, one or moreattendants or other employee(s) working in the identified curb-sidedelivery service department 26 are thereby notified of the identifiedcustomer's arrival at the curb-side, item delivery location CS1, andrespond by delivering to the customer at CS1 the one or more itemsordered by the customer for curb-side delivery.

In other embodiments in which the drive-through, ordered item deliveryarea 1000 includes multiple wireless signal broadcasting devices, andthe process 1200 is executed because the processor 50 has previouslydetermined that the wireless signal broadcasting device 28 ₁-28 _(P)whose wireless identification signal(s) was/were detected by thecustomer's mobile communication device 16, 1010 at step 704 is a CSDwireless signal broadcasting device, the message “PSD message 5”illustratively includes information notifying the identified curb-sidedelivery service department 26 that the identified customer, i.e.,CUSTID, having a completed order has arrived at the curb-side, itemdelivery location CS1-CSN identified using information contained in thedetected wireless identification signal(s). Upon subsequent transmissionof PSD message 5 to the electronic system or device 405 located in orotherwise associated with the identified curb-side delivery servicedepartment 26, one or more attendants or other employee(s) working inthe identified curb-side delivery service department 26 are therebynotified of the identified customer's arrival at the identifiedcurb-side, item delivery location. In embodiments in which theidentified curb-side, item delivery location is one to which thecurb-side delivery service department 26 typically delivers ordereditems, one or more attendants or other employee(s) working in theidentified curb-side delivery service department 26 may then proceed todeliver the one or more items ordered by the identified customer to thatcustomer presently located at the identified curb-side, item deliverylocation. In embodiments in which the identified curb-side, itemdelivery location is one to which the curb-side delivery servicedepartment 26 typically does not deliver ordered items but is ratherprovided for the purpose of identifying one or more customers presentlylocated in the curb-side delivery queue but not yet advanced in thequeue to a curb-side, item delivery location to which the curb-sidedelivery service department 26 delivers ordered items, one or moreattendants or other employee(s) working in the identifiedproduct/service department are thereby notified in advance, e.g., from afew seconds to several minutes or more, of the identified customer'sarrival at the identified curb-side, item delivery location. In someimplementations, this advance notification may, for example, providesufficient time for one or more attendants or other employees of theidentified curb-side delivery service department 26 to perform one ormore operations in preparation for subsequent delivery of the ordereditem(s) to the identified customer.

In embodiments in which the drive-through, ordered item delivery area1000 may or may not include one or more wireless signal broadcastingdevices and in which the process 1200 is executed because the processor50 has previously determined that the identified mobile communicationdevice 16, 1010 has crossed an identified geofence 1016, the message“PSD message 5” illustratively includes information notifying theidentified curb-side delivery service department 26 that the identifiedcustomer, i.e., CUSTID, having a completed order has arrived at thebrick-and-mortar store 25 and/or at the drive-through, ordered itemdelivery area 1000, depending upon where the boundary of the geofence1016 is defined. Upon subsequent transmission of PSD message 5 to theelectronic system or device 405 located in or otherwise associated withthe identified curb-side delivery service department 26, one or moreattendants or other employee(s) working in the identified curb-sidedelivery service department 26 are thereby notified of the identifiedcustomer's arrival at the identified store 25 and/or its drive-through,ordered item delivery area 1000. In some implementations, suitablepositioning of the geofence 1016 may provide advance notification of theidentified customer's arrival at one or more of the curb-side, itemdelivery locations and, as described above, may provide sufficient timefor one or more attendants or other employees of the identifiedcurb-side delivery service department 26 to perform one or moreoperations in preparation for subsequent delivery of the ordered item(s)to the identified customer.

In some embodiments, the process 1200 may include a step 1210, and inother embodiments step 1210 may be omitted. Accordingly, step 1210 isdepicted in FIG. 12 in dashed-line to represent that step 1210 may beoptional. In embodiments which include step 1210, the process 1200advances to step 1210 from step 1208, and the processor 50 isillustratively operable at step 1210 to execute a lane traffic process.An example embodiment of the lane traffic process executed at step 1210is illustrated in FIG. 13 and will be described in detail hereinafter.Following step 1210, or following step 1208 in embodiments which do notinclude step 1210, the process 1200 advances to step 1212 where theprocessor 50 is illustratively operable to generate or retrieve from themessage generation/management module 552 or other message database ormore messages, e.g., Customer message 6, to be transmitted to the mobilecommunication device 16, 1010 of the identified customer. In embodimentsin which the drive-through, ordered item delivery area 1000 includes asingle wireless signal broadcasting device, e.g., 28 ₁, and the process1200 is executed because the processor 50 has previously determined thatthe wireless signal broadcasting device 28 ₁ whose wirelessidentification signal(s) was/were detected by the customer's mobilecommunication device 16, 1010 at step 704 is a CSD wireless signalbroadcasting device, the message “Customer message 6” illustrativelyincludes information notifying the identified customer that delivery tothe customer of the one or more items ordered by the customer isunderway. In other embodiments in which the drive-through, ordered itemdelivery area 1000 includes multiple wireless signal broadcastingdevices, and the process 1200 is executed because the processor 50 haspreviously determined that the wireless signal broadcasting device 28₁-28 _(P) whose wireless identification signal(s) was/were detected bythe customer's mobile communication device 16, 1010 at step 704 is a CSDwireless signal broadcasting device, the message “customer message 6”illustratively includes information notifying the customer of acompleted order that is ready for delivery to the customer at theidentified curb-side delivery service department 26. If the identifiedcurb-side, item delivery location is one to which the curb-side deliveryservice department 26 typically delivers ordered items, the message“customer message 6” further illustratively includes informationnotifying the identified customer that delivery to the customer of theone or more items ordered by the customer is underway. If the identifiedcurb-side, item delivery location is one to which the curb-side deliveryservice department 26 typically does not deliver ordered items but israther provided for the purpose of identifying one or more customerspresently located in the curb-side delivery queue but not yet advancedin the queue to a curb-side, item delivery location to which thecurb-side delivery service department 26 delivers ordered items, themessage “customer message 6” further illustratively includes informationnotifying the identified customer that the one or more items ordered bythe customer will be delivered to the customer when the customeradvances in the drive-through queue to a curb-side, item deliverylocation to which the curb-side delivery service department deliversordered items. In still other embodiments in which the drive-through,ordered item delivery area 1000 may or may not include one or morewireless signal broadcasting devices and in which the process 1200 isexecuted because the processor 50 has previously determined that theidentified mobile communication device 16, 1010 has crossed anidentified geofence 1016, the message “customer message 6”illustratively includes information notifying the identified customer ofa completed order that is ready for delivery to the customer at theidentified curb-side delivery service department 26. In someembodiments, the message “customer message 6” may further includeinformation instructing the identified customer to proceed to thedrive-through, ordered item delivery area 1000 and/or to a specifiedcurb-side, item delivery location. In still further embodiments, themessage “customer message 6” may further include lane recommendationinformation in embodiments which include step 1210. In any case,following step 1212 the process 12 returns to step 724 of the process700 illustrated in FIG. 7.

If, at step 1206, the processor 50 determines that the item orderidentified at step 1204 is not Complete, the process 1200 advances, insome embodiments in which not Complete means Incomplete, to step 1214.In the example described above, the PSD order records may illustrativelyinclude a pickup time and/or date identifier (PTD) field which hasstored therein a scheduled calendar date, and in some embodiments also atime of day, at which the identified customer is to pick up the ordereditem(s) and/or at or after which the ordered item(s) are to be availablefor customer pick up. In some such embodiments, the customer may specifythe PTD identifier and in other embodiments an attendant or otheremployee of the curb-side delivery service department 26 (or otheremployee of the brick-and-mortar store 25 or retail enterprise 11) maydo so. In still other embodiments, the processor 50 may automaticallypopulate the PTD field based on a typical, average or other predefinedtime required by the curb-side delivery service department 26 to fulfillthe order from the time of the order, e.g., the OCT time describedabove. In any case, in some such embodiments in which the PSD orderrecords include the PTD field, the process 1200 illustratively includesstep 1214, and the processor 50 is operable at step 1214 to compare thecurrent time and date, CTD, with the PTD identifier stored in the PTDfield of the PSD order record. If the CTD is less than PTD, then thescheduled date and/or time of customer arrival at the drive-through,ordered item delivery area 100 to have the one or more items ordered bythe customer delivered thereto has not yet arrived, and the process 1200follows the “YES” branch of step 1214 returns to step 724 of the process700 illustrated in FIG. 7. Otherwise, the process 1200 advances, in somesuch embodiments, to step 1216.

In the example described above, the PSD order records may illustrativelyinclude an order completion time (OCT) field which has stored therein atypical, average or other predefined time required by the curb-sidedelivery service department 26 to fulfill a customer order, e.g., bycollecting and bagging or otherwise packaging the one or more ordereditem(s) for subsequent delivery to the customer at the drive-through,ordered item delivery area 1000, from the time of the order. In somesuch embodiments, the OCT field may be populated by an attendant orother employee of the curb-side delivery service department 26 (or otheremployee of the brick-and-mortar store 25 or retail enterprise 11), andin other embodiments the OCT field may be automatically populated by theprocessor 50 based on stored OCT times for previously fulfilled ordersof like item(s), total number of items ordered, type(s) of itemsordered, category(s) of items ordered, or the like.

In any case, in some embodiments in which the PSD order records includethe OCT field, the process 1200 may illustratively include step 1216 asshown by dashed-line representation in FIG. 12. Illustratively, step1216 may be included in embodiments which include multiple wirelesssignal broadcasting devices 28 ₁-28 _(P) and in which the process 1200is executed because the processor 50 has previously determined that theidentified mobile communication device 16, 1010 is located at one ormore of the associated curb-side, item delivery locations is/are one(s)to which the curb-side delivery service department 26 typically does notdeliver ordered items as described above, and/or in embodiments in whichthe drive-through, ordered item delivery area 1000 may or may notinclude one or more wireless signal broadcasting devices and in whichthe process 1200 is executed because the processor 50 has previouslydetermined that the identified mobile communication device 16, 1010 hascrossed an identified geofence 1016. In other embodiments, step 1216 maybe omitted.

In embodiments of the process 1200 which include step 1216, theprocessor 50 is operable at step 1218 to compare the order completiontime stored in the OCT field with a time value, T. In some embodiments,the time value T is an estimated or measured, typical or average, timethat it takes a typical customer to travel from the present location ofthe customer, e.g., the location at or near which a wireless signalbroadcasting device is located which was detected by the customer'smobile communication device 16, 1010 at step 704 of the process 700illustrate in FIG. 7 or the location at which the customer's mobilecommunication device 16, 1010 crosses the geofence 1016, to a, or the,curb-side, item delivery location to which the curb-side deliveryservice department 26 typically delivers ordered items. In any case, ifthe processor 50 determines at step 1218 that OCT is less than or equalto the time value T, this means that the order completion time, OCT, isless than the travel time, T, of the identified customer described aboveand the process 1200 illustratively advances to step 1220 where theprocessor 50 is operable to generate or retrieve from the messagegeneration/management module 552 or other message database one or moremessages, e.g., PSD message 6, to be transmitted to the electronicsystem or device 405 located in or associated with the curb-sidedelivery service department 26.

In embodiments in which the drive-through, ordered item delivery area1000 includes multiple wireless signal broadcasting devices, and theprocess 1200 is executed because the processor 50 has previouslydetermined that the wireless signal broadcasting device 28 ₁-28 _(P)whose wireless identification signal(s) was/were detected by thecustomer's mobile communication device 16, 1010 at step 704 is a CSDwireless signal broadcasting device and the identified curb-side, itemdelivery location is one to which the curb-side delivery servicedepartment 26 typically does not deliver ordered items, the message “PSDmessage 6” illustratively includes information notifying the identifiedcurb-side delivery service department 26 that the identified customer,i.e., CUSTID, has arrived at the identified curb-side, item deliverylocation. In embodiments in which the drive-through, ordered itemdelivery area 1000 may or may not include one or more wireless signalbroadcasting devices and in which the process 1200 is executed becausethe processor 50 has previously determined that the identified mobilecommunication device 16, 1010 has crossed an identified geofence 1016,the message “PSD message 6” illustratively includes informationnotifying the identified curb-side delivery service department 26 thatthe identified customer, i.e., CUSTID, has arrived at thebrick-and-mortar store 25 and/or at the drive-through, ordered itemdelivery area 1000, depending upon where the boundary of the geofence1016 is defined. In either case, upon subsequent transmission of PSDmessage 6 to the electronic system or device 405 located in or otherwiseassociated with the identified curb-side delivery service department 26,one or more attendants or other employee(s) working in the identifiedcurb-side delivery service department 26 are thereby notified of theidentified customer's arrival at the identified location in advance ofthe customer's arrival at a, or the, curb-side, item delivery locationto which the curb-side delivery service department 26 delivers ordereditems. In some implementations, this advance notification may providesufficient time for one or more attendants or other employees of theidentified curb-side delivery service department 26 to complete, i.e.,fulfill, the identified customer's order before the identified customerreaches a, or the, curb-side, item delivery location to which thecurb-side delivery service department 26 delivers ordered items.

In some embodiments, the process 1200 may include a step 1222, and inother embodiments step 1222 may be omitted. Accordingly, step 1222 isdepicted in FIG. 12 in dashed-line to represent that step 1222 may beoptional. In embodiments which include step 1222, the process 1200advances to step 1222 from step 1220, and the processor 50 isillustratively operable at step 1222 to execute the lane trafficprocess, an example of which is illustrated in FIG. 13 and will bedescribed in detail hereinafter. Following step 1222, or following step1220 in embodiments which do not include step 1222, the process 1200advances to step 1224 where the processor 50 is illustratively operableto generate or retrieve from the message generation/management module552 or other message database one or more messages, e.g., customermessage 7, to be transmitted to the customer's mobile communicationdevice 16, 1010. In embodiments in which the drive-through, ordered itemdelivery area 1000 includes multiple wireless signal broadcastingdevices, and the process 1200 is executed because the processor 50 haspreviously determined that the wireless signal broadcasting device 28₁-28 _(P) whose wireless identification signal(s) was/were detected bythe customer's mobile communication device 16, 1010 at step 704 is a CSDwireless signal broadcasting device and the identified curb-side, itemdelivery location is one to which the curb-side delivery servicedepartment 26 typically does not deliver ordered items, the message“customer message 7” illustratively includes information notifying theidentified customer that the one or more items ordered by the customerwill be delivered to the customer when the customer advances in thedrive-through queue to a curb-side, item delivery location to which thecurb-side delivery service department delivers ordered items. In otherembodiments in which the drive-through, ordered item delivery area 1000may or may not include one or more wireless signal broadcasting devicesand in which the process 1200 is executed because the processor 50 haspreviously determined that the identified mobile communication device16, 1010 has crossed an identified geofence 1016, the message “customermessage 7” illustratively includes information notifying the identifiedcustomer that the one or more items ordered by the customer will bedelivered to the customer when the customer advances to a curb-side,item delivery location to which the curb-side delivery servicedepartment 26 delivers ordered items. In some embodiments, the message“customer message 7” may further include information instructing theidentified customer to proceed to the drive-through, ordered itemdelivery area 1000 and/or to a specified curb-side, item deliverylocation. In still further embodiments in which the process 1200includes step 1222, the message “customer message 7” may further includerecommended lane information. In any case, the process 1200 returnsfollowing step 1224 to step 724 of the process 700 illustrated in FIG.7.

If, at step 1218, the processor 50 determines that OCT is greater thanor equal to the time value T, this means that the order completion time,OCT, is greater than travel time, T described above, and the curb-sidedelivery service department 26 therefore will not have sufficient timeto complete the pending order prior to arrival of the identifiedcustomer at a, or the, curb-side, item delivery location to which thecurb-side delivery service department 26 delivers ordered items. In suchcases, the process 1200 advances from the “NO” branch of step 1218, orfrom the “NO” branch of step 1214 in embodiments of the process 1200that do not include step 1218, to step 1226 where the process 800illustratively advances, in some such embodiments, where the processor50 is operable to generate or retrieve from the VDC module 550 a virtualdiscount coupon (VDC). In some embodiments, the processor 50 isillustratively operable to generate VDC, e.g., pursuant to instructionsstored in the VDC module 550, by retrieving a virtual discount couponfrom the virtual discount coupon database 510, and in other embodimentsthe processor 50 may be operable to generate VDC, e.g., pursuant toinstructions stored in the VDC module 550, from or based on any of oneor more different parameters, examples of which may include, but are notlimited to, the customer's purchase history stored in the customerpurchase history database 508, one or more of the items in the customer'currently pending order, one or more products currently in inventory andidentifiable as such in the product/service and pricing data 506, one ormore such products currently in excess, one or more seasonal products ininventory, one or more overstocked products, one or more products orservices included in one or more promotions, and the like.

Following step 1226, the process 1200 illustratively advances to step1228 where the processor 50 is illustratively operable to generate orretrieve from the message generation/management module 552 or othermessage database one or more messages, e.g., “customer message 8”, to betransmitted to the mobile communication device 16, 1010 of theidentified customer, and thereafter at step 1230 the processor 50 isillustratively operable to generate or retrieve from the messagegeneration/management module 552 or other message database one or moremessages, e.g., “PSD message 7,” to be transmitted to the electronicsystem or device 405 located in or associated with the curb-sidedelivery service department 26.

The message “customer message 8” illustratively includes informationnotifying the identified customer that the customer's pending order hasnot been completed and further illustratively includes informationrelating to the virtual discount coupon, VDC, generated at step 1226 orincludes the VDC itself. In the former case, the processor 50 may beoperable as part of step 1226 to transfer the generated VDC to theidentified customer's clipped virtual discount coupon repository 512, inembodiments in which the identified customer has such a clipped virtualdiscount coupon repository 512. In the latter case, the VDC may be sentdirectly to the identified customer, as will be described below withreference to the remainder of the process 700 illustrated in FIG. 7, andin such cases the identified customer may transfer the received VDC tothe customer's clipped virtual coupon repository 512 if the identifiedcustomer has such a clipped virtual coupon repository 512 and otherwisethe identified customer may store the received VDC in the memory 304 ordata storage 306 of the customer's mobile communication device 16 forsubsequent redemption at a the retail enterprise 11.

If, at step 1228, the processor 50 has previously determined that theidentified customer is presently located at a curb-side, item deliverylocation to which the curb-side delivery service department 26 deliversordered items, e.g., CS1 (or CS3), the processor 50 has also determinedat step 1206 that the identified customer's order is not complete and,in embodiments which include step 1216, has further determined at step1218 that there is insufficient time to complete the order due to thecustomer's present location. In such cases, the message “customermessage 8” may further illustratively include instructions to advance tothe waiting area 1018 to await delivery of the customer's ordereditem(s). Further in such cases, the message “PSD message 7”illustratively includes instructions to complete the identifiedcustomer's order and deliver the one or more items specified in thecustomer's order to the customer's motor vehicle at the waiting area1018.

If, at step 1228, the processor 50 has previously determined that theidentified customer is presently located at a curb-side, item deliverylocation to which the curb-side delivery service department 26 does notdeliver ordered items, e.g., CS2 (or CS4), the processor 50 hasdetermined at step 1206 that the identified customer's order is notcomplete and, in embodiments which include step 1216, has furtherdetermined at step 1218 that there is insufficient time to complete theorder due to the customer's present location. In such cases, since thecustomer' motor vehicle is presently located in the drive-through lane1002 (or 1002′) and is therefore in the curb-side delivery queue, themessage “customer message 8” may further illustratively include anotification that the curb-side delivery service department 26 iscurrently filling the customer's order and instructions to advance to a,or the, curb-side, item delivery location to which the curb-sidedelivery service department 26 delivers ordered items. In such cases,instructions to advance to the waiting area 1018 may be provided to thecustomer only upon advancement to a, or the, curb-side, item deliverylocation to which the curb-side delivery service department 26 deliversordered items. In other embodiments, the message “customer message 8”may not include any such additional notification and/or instructions. Inany such case, the message “PSD message 7” illustratively includesinstructions to complete the identified customer's order as soon aspossible.

If, at step 1228, the processor 50 has previously determined that theidentified customer has crossed the geofence 1016 but has not yetentered the drive-through, ordered item delivery area 1000, theprocessor 50 has determined at step 1206 that the identified customer'sorder is not complete and, in embodiments which include step 1216, hasfurther determined at step 1218 that there is insufficient time tocomplete the order due to the customer's present location. In suchcases, since the customer' motor vehicle has not yet entered thedrive-through lane 1002 (or 1002′) and is therefore not yet located inthe curb-side delivery queue, the message “customer message 8” mayfurther illustratively include a notification that the customer's orderis not yet ready for delivery at the drive-through, ordered itemdelivery area 1000. Such notification may further illustratively includenotification of various options, examples of which include, but are notlimited to, proceed to the drive-through, ordered item delivery area1000 and await completion and delivery of the customer's order by thecurb-side delivery service department 26, await completion of thecustomer's order in the parking lot of the store 25, enter the store 25and shop (in which case the processor 50 may re-execute step 1226 one ormore times to provide the customer with one or more additional virtualdiscount coupons for one or more products and/or services offered by theretail enterprise 11 at the identified brick-and-mortar store 25, enterthe store 25 (or adjacent or co-located fueling/convenience outletcontrolled by or affiliated with the retail enterprise 11) for one ormore complementary, i.e., free, drinks and/or food items, leave and comeback later to receive delivery by the curb-side delivery servicedepartment 26 of the one or more items previously ordered by thecustomer, or the like.

In any such case, the processor 50 is illustratively operable tothereafter monitor the location of the customer's mobile communicationdevice 16, 1010, e.g., relative to the geofence 1016 and/or relative tothe geolocation of the store 25 and/or relative to the geolocation(s) ofone or more sub-areas within or near the geofence 1016, and tosupplement the message “customer message 8” with additionalnotification(s), instructions and/or virtual discount coupons dependingupon which option the customer chooses as determined by the processor 50by tracking subsequent travel and positioning of the customer's mobilecommunication device 16, 1010. For example, if the customer chooses towait in the parking lot of the store 25 or leave and return later totake delivery by the curb-side delivery service department 26 of the oneor more items previously ordered by the customer, the processor 50 mayillustratively determine an amount of time required by the curb-sidedelivery service department 26 to fulfill the customer's order, e.g.,using one or more of the techniques described hereinabove, andsupplement the message “customer message 8” with an estimate of thesubsequent time of day, and/or subsequent day, at which the customer'sorder will be ready for delivery to the customer at the drive-through,ordered item delivery area 1000.

The message “PSD message 7” likewise illustratively includes one or morenotifications and/or instructions depending upon which option thecustomer chooses as determined by the processor 50 by tracking traveland positioning of the customer's mobile communication device 16, 1010subsequent to transmission of the message “customer message 8” to theidentified customer's mobile communication device 16, 1010. For example,if the customer chooses to wait in the parking lot of the store 25 orleave and return later to take delivery by the curb-side deliveryservice department 26 of the one or more items previously ordered by thecustomer, the message “PSD message 7” may illustratively include anotification of the customer's decision. In embodiments in which theprocessor 50 determines a subsequent amount of time required by thecurb-side delivery service department 26 to fulfill the customer's orderas just described, the message “PSD message 7” may include and/or besupplemented with, an estimate of the subsequent time of day, and/orsubsequent day, by which the customer's order should be ready fordelivery to the customer at the drive-through, ordered item deliveryarea 1000. In any case, following step 1230, the process 1200 returns tostep 724 of the process 700 illustrated in FIG. 7.

Lane Traffic Process

Referring now to FIG. 13, a simplified flow diagram is shown of anembodiment 1300 of the lane traffic process executed by the processor 50of the main server 12 at steps 1210 and 1222 of the process 1200 (inembodiments of the process 1200 that include step 1210 and/or step1222). In one embodiment, the process 1300 is illustratively stored inthe curb-side delivery processing module 554 in the form of instructionsexecutable by the processor 50 of the main server 12, and the steps ofthe process 1300 will be described below for purposes of this disclosureas being executed by the processor 50 of the main server. In somealternate embodiments, e.g., that may or may not include a main server12, the process 1300 may alternatively be stored in the memory 34(and/or data storage 36) of one or more of the local servers 22 ₁-22_(L) in the form of instructions executable by the processor 30 of theone or more local servers 22 ₁-22 _(L), stored in the memory 402 (and/ordata storage 406) of an electronic system or device 405 associated withone or more one of the curb-side delivery service departments 26 withinone or more of the brick-and-mortar enterprise stores 25 ₁-25 _(L) inthe form of instructions executable by a processor 400 associated withany such any such electronic system or device 405, and/or stored in amemory and executable by a processor of another system external to orsupplemental to the system 10 illustrated FIG. 1. It will further beunderstood that the process 1300 illustrated and described as beingexecuted by one processor/device or one processor/server or oneprocessor/system may alternatively be executed by a differentprocessor/device or processor/server or processor/system in the system10, and/or by two or more such processors in any one or combination ofsuch devices, servers and/or systems, some examples of which aredescribed above.

The process 1300 begins at step 1302 where the processor 50 is operableto acquire lane traffic information for each of the drive through lanes,L₁-L_(R), where R may be any positive integer. The processor 50 isillustratively operable to execute step 1302 by acquiring informationrelating to the traffic in any one or more of the lanes L₁-L_(R) fromany of the systems and/or devices described hereinabove, and/or usingany technique described hereinabove for identifying one or more customermobile communication devices 16, 1010 and/or one or more customer motorvehicles 1004. Examples include, but are not limited to, one or more ofthe wireless signal broadcasting devices 26 ₁-26 _(N), one or morecameras, e.g., 1022, 1022′, one or more customer mobile communicationdevices 16, 1010, and the like. In any case, following step 1302 theprocess 1300 advances to step 1304 where the processor 50 is operable toestimate a wait time, WT_(i), for each drive-through lane, L_(i), i=1,R. Each wait time, WT_(i), illustratively corresponds to an expectedtime between arrival of a customer vehicle 1004 at one of thedrive-through lanes and curb-side delivery/pick-up of that customer'sordered items. Illustratively, the processor 50 is operable to executestep 1304 using any one or more conventional prediction techniques.

Following step 1304, the process 1300 advances to step 1306 where theprocessor 50 is operable to determine whether the wait time, WT_(i) foreach lane, i.e., for all lanes, is greater than a threshold time period,T_(TH), where T_(TH) may be any desired time period. In someembodiments, T_(TH) is set to a time period beyond which customers willnot be expected to wait in a drive-through lane for delivery of one ormore ordered items. In any case, if the processor 50 determines at step1306 that the wait time for one or more drive-through lanes is less than(or equal to) T_(TH), the process 1300 advances to step 1308 where theprocessor 50 is operable to generate one or more recommendeddrive-through lanes, RL, based on the estimated wait times WT_(i).Illustratively, the one or more recommended drive-through lanes, RL,will include one or more lanes for which WT_(i)<T_(TH), and in someembodiments the processor 50 may be operable to sort the one or morerecommended drive-through lanes, RL, based on increasing wait timeduration. In any case, the process 1300 returns from step 1308 to theprocess 1200 illustrated in FIG. 12. If, at step 1306, the processor 50determines that all wait times WT_(i) are greater than T_(TH), theprocess 1300 advances to step 1310 where the processor 50 isillustratively operable to generate or retrieve from the messagegeneration/management module 552 or other message database one or moremessages, e.g., “customer message 5”, to be transmitted to the mobilecommunication device 16, 1010 of the identified customer.Illustratively, “customer message 5” includes a notification or othermessage informing that the waiting time, WT_(i) for all drive-throughlanes is greater than T_(TH). Thereafter, the process 1300 terminatesand returns to the process 700 illustrated in FIG. 7 where the “customermessage 5” is transmitted to, and received by, the customer's mobilecommunication device 16, 1010, in which case the customer may wish toreturn for the curb-side delivery/pickup of the customer's order at alater time. In some embodiments, the “customer message 5” may alsoinclude one or more virtual discount coupons, and in some embodimentsone or more such virtual discount coupons may be selected, based on thecustomer's purchase history and/or ordered items and/or on otherconsiderations, to entice the customer to enter the store.

Produce Scale Components

Referring now to FIG. 14, a simplified block diagram is shown of anembodiment of one of the one or more produce scales 220 illustrated inFIG. 2. In the embodiment illustrated in FIG. 14, a representativeproduce scale 220 illustratively includes at least a display 1400, e.g.,in the form of a conventional display screen or monitor, one or moresensors 1404, e.g., including one or more conventional weight sensors,and conventional hardware infrastructure 1406, e.g., including a housingand at least one weight-bearing plate, table, tray or platform uponwhich produce items to be weighed are placed. In some embodiments, thedisplay 1400 is a touch-screen display capable of receiving manualselection of one or more displayed graphical elements such as graphicalkeypad elements, one or more selectable graphical icons or the like. Inembodiments in which the display 1400 is not a touch-screen display, theproduce scale 220 may further include a conventional hardware keypad.

In some embodiments, the produce scale 220 is controlled entirely by themain server 12 and/or one of the local hub servers 22 ₁-22 _(L) to whichthe produce scale 220 may be coupled and/or one of the point-of-salesystems 24 ₁-24 _(M) to which the produce scale 220 may be coupled. Insome such embodiments, the processor 50 of the main server 12, theprocessor 30 of a corresponding local hub server 22 and/or the processor200 of a corresponding point-of-sale system 24 is/are operable tocontrol the entirety of the operation of the produce scale 220. In somealternate embodiments, the produce scale 220 may include componentssimilar to the main server 12 and also to the one or more local hubservers 22 ₁-22 _(L) and the one or more POS systems 24 ₁-24 _(M) suchas a processor 1410, an I/O subsystem 1412, a memory 1414 and a datastorage device 1416 as shown in dashed-line representation in FIG. 14.In some embodiments, each of the foregoing components may be identicalto corresponding components of the local hub server 22 ₁ and/or POSsystem 24 described above, and a detailed explanation of such componentswill not be repeated here for brevity. In other embodiments, the producescale 220 may be configured differently than the local hub server 22 ₁and/or POS system 24 described above.

As will be described in detail hereinafter, a produce menu graphic userinterface (GUI) is illustratively displayed on the display 1400 of theproduce scale 220. In some embodiments, the processor 50 of the mainserver 12 is illustratively operable to control display of the producemenu GUIs displayed on the produce scale 220. In some alternateembodiments, one or more of a processor 30 of a corresponding one of thelocal hub servers 22, a processor 200 of a corresponding one of thepoint-of-sale systems 24 and/or the processor 1410 of the produce scale26, 220, in embodiments which include the processor 1410, may control,in whole or in part, display of the produce menu GUIs displayed on theproduce scale 220 and/or operation of the produce scale 220 generally.

Ordered Item Fulfillment Process—Weighable Items

Referring now to FIG. 15, a simplified flow diagram is shown of anembodiment of an ordered item fulfillment process 1500 executed by theprocessor 50 of the main server 12. In one embodiment, the process 1500is illustratively stored in the curb-side delivery processing module 554of the ordered item notification module 540 in the form of instructionsexecutable by the processor 50 of the main server 12, and the steps ofthe process 1500 will be described below for purposes of this disclosureas being executed by the processor 50 of the main server. In somealternate embodiments, e.g., that may or may not include a main server12, the process 1500 may alternatively be stored in the memory 34(and/or data storage 36) of one or more of the local servers 22 ₁-22_(L) in the form of instructions executable by the processor 30 of theone or more local servers 22 ₁-22 _(L), stored in the memory 402 (and/ordata storage 406) of an electronic system or device 405 associated withone or more one of the curb-side delivery service departments 26 withinone or more of the brick-and-mortar enterprise stores 25 ₁-25 _(L) inthe form of instructions executable by a processor 400 associated withany such any such electronic system or device 405, and/or stored in amemory and executable by a processor of another system external to orsupplemental to the system 10 illustrated FIG. 1. It will further beunderstood that the process 1500 illustrated and described as beingexecuted by one processor/device or one processor/server or oneprocessor/system may alternatively be executed by a differentprocessor/device or processor/server or processor/system in the system10, and/or by two or more such processors in any one or combination ofsuch devices, servers and/or systems, some examples of which aredescribed above.

Illustratively, ordered items will generally be fulfilled, i.e.,collected and pre-processed through a POS system 24, by one or morestore employees. When the customer thereafter arrives, the customer needonly complete the purchase, which in some embodiments may beaccomplished by the customer prior to arrival at the store at which theorder is processed, and in other embodiments may be accomplished by thecustomer upon arrival for pickup of the ordered items. In any case, theprocess 1500 illustrated in FIG. 15 relates specifically to a processfor fulfilling produce items in embodiments in which a customer'sordered item(s) includes one or more produce items.

The process 1500 begins at step 1502 where the processor 50 is operableto monitor the keypad 1402, sensor 1404 or other device via which astore employee can be identified to a produce scale 220. Thereafter atstep 1504, the processor 50 is operable to determine whether an employeeID has been detected, and the process 1500 loops back to step 1502 untilsuch detection occurs. Following detection of an employee ID at step1504, the process 1500 advances to step 1506 where the processor 50 isoperable to control the display 1400 of the produce scale 220 to displayone or more GUI elements or fields for entering a customer order number.Upon successful detection of such a customer order number at step 1508,the process 1500 advances to step 15010 where the processor 50 isoperable to control the display 1400 to display selectable GUI elementsonly for weighable items, e.g., produce items, associated with thecustomer's order number entered at step 1506. Thereafter at step 1512,the processor 50 is operable to monitor the displayed GUI elements.

In some embodiments of the process 1500, the processor 50 may beoperable to access the product/service and pricing data 506 to determinewhether one or more of the weighable items associated with thecustomer's order number is currently in inventory, i.e., in stock, inthe store 25. If not the processor 50 may be illustratively operable toprocess the in-stock inventory data to determine whether any one or morein-stock items may be substitutable for one or more of the weighableitems associated with the customer's order number that is/are notcurrently in stock. In such embodiments, the process 1500 may includestep 1516.

In some embodiments of the process 1500 which include step 1516, theprocessor 50 is illustratively operable at step at steps 1520-1526 tocontrol the display 1400 to display one or more selectable GUI elementsfor the one or more substitute items determined by the processor 50 asjust described, to monitor the displayed GUI elements for selection bythe employee, and to thereafter advance to step 1528. In otherembodiments in which the processor 50 is not operable to pre-determineone or more substitute items but which still may include step 1516, theprocessor 50 is illustratively operable at step 1518 to control thedisplay 1400 to display a selectable GUI element which may be selectedby the employee to substitute one or more of the weighable itemsassociated with the customer's order number with one or more substituteitems of the employee's choosing. If the processor 50 determines at step1518 that such a selectable GUI element is selected, the process 1500advances to step 1520 where the processor 50 is operable to control thedisplay 1400 to display one or more GUI field in which the employeeenters the UPC code or other identifier code which identifies thesubstitute item. In some alternative embodiments, the display 1400 atstep 1520 may be or include a selectable menu GUI. In any case, upondetection at step 1522 of an employee-identified substitute item, theprocessor 50 is operable at step 1524 to control the display to displayinformation about the substitute item including, for example, itemdescription, image thereof, price per unit weight, and/or otherinformation. Thereafter at step 1526, the processor 50 is operable toadd the identified substitute item to the items associated with thecustomer's order number. In some embodiments, the processor 50 may beoperable at step 1526 to transmit a message to the customer's mobilecommunication device 16, to the customer's email account and/or otherinformation medium informing of the substitution and requestingconfirmation/rejection thereof.

In embodiments which include step 1516, the process 500 advances fromstep 1526 to step 1528. In embodiments of the process 1500 which do notinclude step 1516, the process 1500 advances from step 1512 to step 1514where the processor 50 is operable to determine whether one of thedisplayed GUI elements, each corresponding to one of the weighable itemsassociated with the customer's order number, has been selected. If not,the process loops back to step 1512, and if so the process 1500 advancesto step 1528.

At step 1528, the processor 50 is operable to monitor weight applied tothe item tray or platform of the identified produce scale 220, andthereafter at step 1530 the processor 50 is operable to determinewhether the weight is greater than a threshold weight, W_(TH).Illustratively, the threshold weight, W_(TH), is a so-called tareweight, such that when the weight applied to the identified producescale 220 exceeds W_(TH), this indicates that the weighable itemcorresponding to the selected GUI element has been placed on the item orplatform of the identified produce scale 220. If the processor 50determines at step 1530 that the weight applied to the identifiedproduce scale 220 is greater than W_(TH), the process 1500 advances tostep 1532, and otherwise the process 1500 loops back to the beginning ofstep 1528.

At step 1532, after the weight has stabilized, the processor 50 isoperable to access the product/service pricing data 506 to determine theunit price of the weighed item corresponding to the selected GUIelement, and to then calculate the price of the item presently beingweighed as a function of the weight of the item determined at steps1528/1530 and the unit price of the item determined from theproduct/service pricing data 506. Thereafter at step 1534, the processor50 is operable to associate the weighed item and its calculated pricewith the customer's order number in the customer order portion of thecustomer's account data 504, and to mark the item in the order portionof the customer's account data 504 as weighed and priced.

At step 1536, the processor 50 is operable to determine whether theweighing process is complete, e.g., by monitoring the weight on theproduce scale 220 or by generating and displaying a selectable GUIelement which the employee selects when finished weighing the item. Ifnot the process 1500 loops back to the beginning of step 1536, and if sothe process 1500 advances to step 1538 where the processor 50 deletesthe weighed and priced item from the displayed GUI. Thereafter at step1540, the processor 50 is operable to determine whether the employee isfinished weighing all weighable items associated with the customer'sorder number, e.g., by generating and displaying a selectable GUIelement which the employee selects when finished weighing all items. Ifnot finished, the process 1500 loops back to step 1512 for weighing ofthe next item associated with the customer's order number. If finished,the process 1500 terminates with the one or more items associated withthe customer's order pre-processed such that all such items are markedas weighed and priced and all such items are linked to a correspondingweighed price.

Ordered Item Fulfillment Process—Price Scanning

Referring now to FIG. 16, a simplified flow diagram is shown of anembodiment of another ordered item fulfillment process 1600 executed bythe processor 50 of the main server 12. In one embodiment, the process1600 is illustratively stored in the curb-side delivery processingmodule 554 of the ordered item notification module 540 in the form ofinstructions executable by the processor 50 of the main server 12, andthe steps of the process 1600 will be described below for purposes ofthis disclosure as being executed by the processor 50 of the mainserver. In some alternate embodiments, e.g., that may or may not includea main server 12, the process 1600 may alternatively be stored in thememory 34 (and/or data storage 36) of one or more of the local servers22 ₁-22 _(L) in the form of instructions executable by the processor 30of the one or more local servers 22 ₁-22 _(L), stored in the memory 402(and/or data storage 406) of an electronic system or device 405associated with one or more one of the curb-side delivery servicedepartments 26 within one or more of the brick-and-mortar enterprisestores 25 ₁-25 _(L) in the form of instructions executable by aprocessor 400 associated with any such any such electronic system ordevice 405, and/or stored in a memory and executable by a processor ofanother system external to or supplemental to the system 10 illustratedFIG. 1. It will further be understood that the process 1600 illustratedand described as being executed by one processor/device or oneprocessor/server or one processor/system may alternatively be executedby a different processor/device or processor/server or processor/systemin the system 10, and/or by two or more such processors in any one orcombination of such devices, servers and/or systems, some examples ofwhich are described above.

Illustratively, after an employee collects items associated with acustomer order, which may include pre-processing one or more weighableitems, e.g., in accordance with the process 1500 illustrated in FIG. 15,the collected items will generally be price-scanned and packaged, e.g.,bagged, for subsequent curb-side delivery to, and pickup, by theassociated customer. The process 1600 illustrated in FIG. 16 relates tosuch a price scanning process which will generally be conducted at oneof the point-of-sale systems 24 ₁-24 _(M) which may be located in thecurb-side delivery service department 26 or located elsewhere within thestore 25 (“the POS system”).

The process 1600 begins at step 1602 where the processor 50 is operableto determine whether an employee, e.g., a POS system attendant oroperator, has entered the customer's order number into a keypad,touch-screen or other data entry mechanism at or otherwise associatedwith the POS system 24. If not, the process 1600 loops back to step 1602until such a customer order number is detected, after which the process1600 advances to step 1604 where the processor 50 is operable to accessthe list of ordered items associated in the customer account data 404 orother such database with the customer's order number. Thereafter at step1606, the processor 50 is operable to determine from the list whetherany items have been pre-processed, e.g., according to the weighable itemprocess illustrated in FIG. 15. If so, the process 1600 advances tosteps 1608 and 1610 where the processor 50 is operable to add suchpre-processed items and prices to the transaction record and price totaland to then mark such items as complete.

Following step 1610, the process 1600 advances to step 1612 where theprocessor 50 is operable to determine whether additional, i.e.,uncompleted, items remain on the list of ordered items associated withthe customer's order number. If not, the process 1600 advances to step1630. If, at step 1612 the processor 50 determines that additional itemsto be processed remained on the list of ordered items associated withthe customer's order number, or if at step 1606 the processor 50determined that the list did not contain any pre-processed items, theprocess 1600 advances to step 1614 where the processor 50 is operable toprice scan one of the uncompleted items on the list. Thereafter at step1616, the processor 50 is operable to determine whether theprice-scanned item matches one on the list of uncompleted itemsassociated with the customer's order number. If not, the process 1600advances to step 1618 where the processor 50 is operable to determinewhether the non-matching item is a substitute item. In some instances,employees collecting ordered items from within the store 25 maysubstitute one or more employee-selected items for items on the list ofordered items which are missing, i.e., currently out-of-stock, and/orwhich are in stock but not in a quantity sufficient to satisfy theorder. In such cases, execution of step 1618 may illustratively proceedwith the processor 50 controlling the POS display 218 to display amessage or notification relating to the non-matching item and alsodisplaying a number of selectable GUI elements via which the POSattendant or operator may select to mark the item as a substitute itemor reject the item as one that was inadvertently collected duringcollection of the customer's ordered items. In the former case, theprocess 1600 advances to step 1620 where the processor 50 is operable toadd the substitute item to a substitute item list and to associate thesubstitute item list in the customer account data 404 or other databasewith the customer's order number, and thereafter at step 1624 theprocessor 50 is operable to add the item and its price to the order andthen, at step 1626, to remove the item from the list of items in theorder to be processed. In the latter case, the process 1600 advances tostep 1622 where the processor 50 is operable to omit the item and to notinclude the item/price in the transaction.

Following step 1620 and step 1626, the process 1600 advances to step1628 where the processor 50 is operable to determine whether any itemsremain in the list of items associated with the customer's order numberand, if so, the process 1600 loops back to step 1614. Otherwise, theprocess 1600 advances to step 1630 where the processor 50 is operable todetermine whether a substitute item list is associated in the customeraccount data 404 or other such database with the customer's ordernumber, and/or whether any such substitute list includes any itemsrelating to the customer's order number entered at step 1602. If so, theprocess 1600 advances to step 1632 where the processor 50 is operable toautomatically transmit a message to the customer's mobile communicationdevice and/or other communication medium, e.g., the customer's one ormore email addresses, etc., informing the customer of the one or moresubstitute items and requesting a response confirming or declining oneor more each such substitute item. If the processor 50 insteaddetermines at step 1630 that no such substitute list is associated withthe customer's order number and/or that any such list does not includeany outstanding, i.e., unconfirmed, substitute items, the process 1600advances to step 1634 where the processor 50 is operable to mark theorder in the customer account data 404 or other database as complete.

Ordered Item Fulfillment Process—Substitute Item Processing

Referring now to FIG. 17, a simplified flow diagram is shown of anembodiment of another ordered item fulfillment process 1700 executed bythe processor 50 of the main server 12. Illustratively, the process 1700has the same framework as the process 1100 illustrated in FIG. 11, andthe process 1700 is illustratively executed in the same manner by thesame one or more processors as described above with respect to theprocess 1100. In the embodiment illustrated in FIG. 17, the portion ofthe process 1700 to the right of the vertical line under the heading“main server” is illustratively stored in the curb-side deliveryprocessing module 554 of the ordered item notification module 540 in theform of instructions executable by one or more processors as describedabove with respect to the process 1100 of FIG. 11, and the portion ofthe process 1700 to the left of the vertical line under the heading“MCD/user computing device” is illustratively stored in the OI App 310and/o in the memory 354 of a user computing device 18 in the form ofinstructions executable by one or more processors as described abovewith respect to the process 1100 of FIG. 11.

In some embodiments, after collected items associated with a customerorder have been price scanned, e.g., in accordance with the process 1600illustrated in FIG. 16, the order may not be marked complete if theorder includes one or more substitute items. In some such embodiments,the processor 50 is operable to notify the customer of such one or moresubstitute items and request confirmation or rejection thereof. Theprocess 1700 illustrated in FIG. 17 relates to a customer-interactiveprocess by which the customer may confirm one or more such substituteitems, reject one or more such substitute items and/or select one ormore different substitute items.

The process 1700 begins at step 1702 where the processor 300 and/or 350of the customer's mobile communication device 16, 1010 and/or usercomputing device 18 respectively, (“the processor 300/350”) is operableto receive the substitute item message transmitted by the main server 12at step 1632, and thereafter at step 1704 the processor 300/350 isoperable to control the display 322/366 to display one of the substituteitems along with the item originally ordered by the customer and inplace of which the substitute item was substituted, along with one ormore selectable GUI elements via which the customer can selectivelyconfirm or reject the substitution. Thereafter at step 1706, theprocessor 300/350 is operable to determine whether the customer hasconfirmed or rejected the substitute item. If confirmed, the process1700 advances to step 708 where the processor 300/350 is operable tocontrol the communication circuitry 312/360 to transmit a confirmationmessage to the server 12. If rejected, the process 1700 advances to step1710 where the processor 300/350 is operable to control the display322/366 to display one or more selectable GUI elements via which thecustomer can selectively remove the item from the list or requestselection of another substitute item. If the former, the process 1700advances to step 1712 where the processor 50 is operable to control thecommunication circuitry 312/366 to transmit a removal message to theserver 12. If the latter, the processor 300/350 is operable at step 1714to control the communication circuitry 312/366 to transmit a differentsubstitution message to the server. Following any and each of steps1708, 1712 and 1714, the portion of the process 1700 executed by theprocessor 300/350 advances to step 1752.

At step 1716, the main server receives the confirmation, removal ordifferent substitution message transmitted at step 1708, 1712 or 1714respectively, and thereafter at step 1718 the processor 50 of the mainserver 12 is operable to determine which of these messages was received.If the confirmation (substitution) message (S) is received, the process1700 illustratively advances to step 1754. If the removal message (R) isreceived, the process 1700 advances to step 1720 where the processor 50is operable to subtract the price of the substitute item from thetransaction total associated with the customer's order number, and toremove the substitute item from the substitute item list and from thetransaction. Thereafter at step 1722, the processor 50 is operable togenerate a message requesting removal of the substitute item from thecustomer's order, i.e., removal from the bag or other packaging, andthereafter at step 1724 the processor 50 is operable to control thecommunication circuitry 58 to transmit the message generated at step1724 to the store holding the order for the customer. The process 1700then advances from step 1724 to step 1754. In some embodiments, theprocessor 50 may further control the communication circuitry 58 totransmit one or more messages to the customer to confirm the customer'sinstructions.

If, at step 1718, the processor 50 determines that the message receivedat step 1716 is a different substitution message (D), the process 1700advances to step 1726 where the processor 50 is operable to generate alist of potential substitute items, e.g., as described above withrespect to the process 1500 illustrated in FIG. 15, and thereafter atstep 1728 the processor 50 is operable to control the communicationcircuitry 58 to transmit the list to the customer.

At step 1730, the processor 300/350 receives the substitute item listtransmitted at step 1728, and thereafter at step 1732 the processor300/350 is operable to control the display 312/366 to display thereceived list of substitute items along with one or more selectable GUIelements via which the customer may select one or more of the items onthe list or none. If the former, the process 1700 advances to step 1736where the processor 300/350 is operable to control the communicationcircuitry 312/360 to transmit a chosen substitute item message (C), andif the latter the process 1700 advances to step 1738 where the processor300/350 is operable to control the communication circuitry 312/360 totransmit a “none” message (N). The portion of the process 1700 executedby the processor 300/350 also advances from steps 1736 and 1738 to step1752 where the processor 300/350 is operable to determine whether thelist of substitute items received at step 1702 include one or moreadditional substitute items to be processed by the customer. If so, theprocess 1700 loops back to step 1704, and otherwise the portion of theprocess 1700 executed by the processor 300/350 is complete.

At step 1740, the main server 12 receives the message transmitted atstep 1736 or at step 1738. Thereafter at step 1742, the processor 50 ofthe server 12 determines which message was received, and if the “none”message (N), the process loops to step 1720. If the chosen substituteitem message (C), the process 1700 advances to step 1744 where theprocessor 50 is operable to generate a message requesting substitutionof the original substitute item in the customer's order with the chosensubstitute item, i.e., that chosen by the customer at step 1734, andthereafter at step 1746 the processor 50 is operable to control thecommunication circuitry 58 to transmit the generated to the storeholding the order for the customer. The process 1700 then advances fromstep 1746 to step 1748 where the processor 50 is operable to replace thesubstitute item in the customer's list of ordered items with that chosenby the customer, to update the price thereof in the list and in thepurchase transaction total, and to remove the substitute item from thelist of substitute items. Thereafter at step 1754 the processor 50 isoperable to determine whether all substitute items have been process andto loop back to the beginning of step 1754 until all such substituteitems are processed. Thereafter, the process 1700 advances to step 1756where the processor 50 is operable to mark, e.g., in the customer'saccount data 404 or other such database, the customer's order ascomplete and ready for curb-side delivery and pickup by the customer.Thereafter the portion of the process 1700 executed by the processor 50of the main server 12 is complete.

While the disclosure has been illustrated and described in detail in thedrawings and foregoing description, such an illustration and descriptionis to be considered as exemplary and not restrictive in character, itbeing understood that only illustrative embodiments have been shown anddescribed and that all changes and modifications consistent with thedisclosure and recited claims are desired to be protected. For example,it will be understood that while several process steps in varioussequences have been illustrated and described herein with respect to theprocesses 700, 800, 900, 1100, 1200, 1300, 1500, 1600 and 1700, any oneor more such processes 700, 800, 900, 1100, 1200, 1300, 1500, 1600and/or 1700 may alternatively include more, fewer and/or differentsteps, and that any such steps may be executed in different sequencesfrom those illustrated and described, without departing from the scopeof the concepts and techniques described herein.

In the embodiments described herein, the position identification devices28 ₁-28 _(P) have been described as being implemented as wireless signalbroadcasting devices, e.g., conventional radio frequency broadcastingbeacons, configured to broadcast wireless signals each containing UID.In some alternate embodiments, one or more of the PIDs may beimplemented as wireless signal transceivers configured to can broadcastand receive wireless signals and/or as wireless signal receiversconfigured to receive broadcast wireless signals, e.g., broadcast by amobile communication device or other device and, in some cases, tocommunicate directly (wired and/or wirelessly) with the main server 12,one or more of the local hub servers 22 and/or one or more of the POSsystems 24. In some such embodiments, one or more of the wireless signaltransceivers and/or receivers may include one or more conventionalprocessors and one or more memory devices having instructions storedtherein executable by the one or more processors to execute one or moreof steps for determining an identity of an individual carrying a mobilecommunication device within and/or near a store 25.

In other alternate embodiments, one or more PIDs 28 may be implementedin the form of a combination of conventional Global Positioning System(GPS) satellites and a GPS receiver on-board a mobile communicationdevice.

In other alternate embodiments, one or more PIDs 28 may be implementedin the form of one or more in-store WiFi Access Points which establishone or more in-store or store-wide hotspot having a unique internetaccess ID (HotSpotID) accessible by a mobile communication device. Insuch embodiments, the server 12 may determine a location of a mobilecommunication device in accordance with the unique internet access IDused by the mobile communication device to communicate with the mobilecommunication device.

In other alternate embodiments, one or more PIDs 28 may be implementedin the form of a combination of the earth's Geomagnetic Field and amagnetometer on-board a mobile communication device. In suchembodiments, the server 12 may determine the location of a mobilecommunication device in accordance with the unique magnetic fieldsignature captured by the magnetometer and wirelessly transmitted to theserver 12 by the mobile communication device. In such embodiments, theserver database may have one or more maps, tables, lists or the likemapping magnetic signature profiles within one or more of the stores tolocations or positions within one or more of the stores, and the server12 may be operable in such embodiments to determine the in-storelocation or position of a mobile communication device by comparing theunique magnetic field signature wirelessly transmitted by the mobilecommunication device to the stored magnetic signature profiles.

In other alternate embodiments, one or more of the PIDs 28 may beimplemented in the form of a combination of a camera on-board a mobilecommunication device and a product label affixed to product or productlocation within a store. In such embodiments, the camera may be operatedto capture an image of the product label and wirelessly transmit theimage to the server. The server may then compare the image to storedproduct data to determine the in-store location thereof.

In other alternate embodiments, one or more of the PIDs 28 may beimplemented in the form of a combination of a mobile communicationdevice with a keypad and a customer/employee application operating onthe mobile communication device. In such embodiments, thecustomer/employee application may display one or more manuallyselectable GUI elements for manually entering the location of the mobilecommunication device, and the mobile communication device may thenwirelessly transmit the location information to the server.

In other alternate embodiments, one or more of the PIDs 28 may beimplemented in the form of a wireless signal transmission device, e.g.,RFID Tag, NFC device, etc., attached to customer-selected product. Insuch embodiments, the wireless signal transmission device may beconfigured to wirelessly transmit product information (e.g., brand,size, etc.) and/or location (e.g., department, aisle, shelf position,etc.) to a mobile communication device which then wirelessly transmitsthe information to the server.

In other alternate embodiments, one or more of the PIDs 28 may beimplemented in the form of a combination of one or more in-store Camerasand a server-based facial and/or product recognition application. Insome such embodiments, the server may process camera images and/or videoand compare facial images with stored customer images to identifycustomers. In other embodiments, the server may process the cameraimages and/or video and compare product images, e.g., in customer'spossession (basket, hand-carried, etc.) with stored product images, andthen predict the customer's identity based on information contained incustomer shopping histories.

In other alternate embodiments, one or more PIDs 28 may be implementedin the form of a combination of one or more electromagnetic radiation(EMR) generators positioned within a store 25 and a mobile communicationdevice with a camera and/or microphone. In such embodiments, the EMR maybe generated in one or more spectral ranges, and be made to vary locallyfrom store-to-store and throughout each store in one or more detectableEMR properties or characteristics, and/or EMR having differentproperties or characteristics may be generated in each store and indifferent areas of each store, such that in any case different stores,and different areas within each store, will be subject to differentgenerated EMR properties or characteristics. The different EMRproperties and/or characteristics generated in each store and in eacharea of each store may be stored in an EMR database, and local EMRproperties/characteristics may be detected by a mobile communicationdevice and wirelessly transmitted to the server which may then comparesuch received information to the EMR database to determine the locationof the mobile communication device. Examples of such EMR generators andcorresponding EMR detectors include, but are not limited to, one or morevisible Light Generators and a camera on-board a mobile communicationdevice, one or more audible frequency Generators and a microphoneon-board a mobile communication device, one or more radio frequencygenerators and a radio frequency generator on board a mobilecommunication device, and the like.

In other alternate embodiments, one or more PIDs 28 may be implementedin the form of one or more mobile communication devices of one or morein-store customers or in-store Employees. In such embodiments, in-storemobile communication devices may be configured to periodically broadcastsignals detected by a customer's mobile communication device and/ortransmitted directly to the server. Such broadcast signals be or include“location information” signals based on one or more “hard events” suchas a recently received unique identification signal transmitted by anin-store wireless signal broadcasting device, a recently scanned orimaged product code, detected product device data, recently received GPSdata, recently used HotSpotID data, recently detected EMR data, and/orthe like. Alternatively or additionally, the one or more broadcastsignals may be or include location information signals based on one ormore “soft events” such as locally detected sounds (generated or not),locally detected light (generated or not), locally detected RF signals,and/or the like.

In any of the foregoing embodiments, information may be transmitted,receive and/or processed by any one or combination of any system ordevice disclosed herein.

What is claimed is:
 1. A method of processing items ordered for customerpickup from a brick-and-mortar store of a retail enterprise, the methodcomprising: with a processor, storing in a database a plurality ofbrick-and-mortar store identification codes and associated geographicboundaries each identifying a different one of a plurality ofbrick-and-mortar stores of the retail enterprise and an associatedgeographic boundary defined at least partially about the one of theplurality of brick-and-mortar stores or an order receiving area adjacentthereto, with the processor, storing in the database a plurality ofcustomer codes each identifying a different one of a plurality ofcustomers of the retail enterprise, with the processor, associating inthe database with at least one of the plurality of customer codes (a) anorder status code identifying a status of an order placed for at leastone associated item for pickup by a corresponding one of the pluralityof customers, and (b) one of the plurality of brick-and-mortaridentification codes identifying the one of the plurality ofbrick-and-mortar stores from which the order for the at least oneassociated item was placed, with the processor, determining that one ofthe plurality of customers associated in the database with acorresponding one of the plurality of customer codes has entered one ofthe plurality of geographic boundaries based on GPS tracking of a mobilecommunication device associated in the database with the correspondingone of the plurality of customer codes, in response to determining thatone of the plurality of customers has entered one of the plurality ofgeographic boundaries, determining whether the one of the plurality ofcustomer codes associated in the database with the entering one of theplurality of customers is also associated in the database with an orderstatus code indicative of a pending order for pickup by the entering oneof the plurality of customers of the at least one associated item, inresponse to determining that the one of the plurality of customer codesassociated in the database with the entering one of the plurality ofcustomers is also associated in the database with an order status codeindicative of a pending order for pickup by the entering one of theplurality of customers of at least one associated item, determining withthe processor whether the one of the plurality of brick-and-mortar storeidentification codes associated in the database with the entered one ofthe plurality of geographic boundaries is also associated in thedatabase with the associated order status code, and in response todetermining that the one of the plurality of brick-and-mortar storeidentification codes associated in the database with the entered one ofthe plurality of geographic boundaries is also associated in thedatabase with the associated order status code and the associated orderstatus code indicates that the pending order for the at least oneassociated item is complete, controlling, at least in part with theprocessor, a display monitor located at an order pickup department ofthe one of the plurality of brick-and-mortar stores to display a firstnotification message including information indicating that the one ofthe plurality of customers associated with the determined order statuscode has entered the one of the plurality of geographic boundaries andthat the order identified by the determined order status code iscomplete.
 2. The method of claim 1, further comprising: with theprocessor, associating in the database each of the plurality of customercodes with communication information identifying a mobile communicationdevice associated with a respective one of the plurality of customers,and if the determined order status code indicates that the pending orderfor the at least one associated item is complete, wirelesslytransmitting to the mobile communication device identified by thecommunication information associated in the database with the enteringone of the plurality of customers, under control of the processor, afirst customer message for display on the identified mobilecommunication device, the first customer message including informationindicating that a completed order for the at least one item associatedwith the determined order status code is ready for pick up.
 3. Themethod of claim 1, further comprising: with the processor, furtherassociating in the database with the one of the plurality of customercodes (d) a scheduled pickup time corresponding to at least one of acalendar date and time of day of a calendar at which the order for theat least one associated item is to be completed for pickup, and (e) anorder completion time corresponding to an estimated time required by theorder pickup department to complete the order for the at least oneassociated item, and in response to determining that the one of theplurality of brick-and-mortar store identification codes associated inthe database with the entered one of the plurality of geographicboundaries is also associated in the database with the order status codeindicative of the pending order for pickup of the at least oneassociated item, the determined order status code indicates that thepending order for pickup of the at least one associated item is not yetcomplete and a current calendar date or current time of day of a currentcalendar date is equal to or later than the scheduled pickup time, (iii)comparing the order completion time associated in the database with theorder status code identifying the status of the order for pickup of theat least one associated item by the entering one of the plurality ofcustomers to a predefined time, and (iv) if the order completion time isless than or equal to the predefined time, controlling, at least in partwith the processor, the display monitor located at the order pickupdepartment to display a second notification message includinginformation indicating that the one of the plurality of customersassociated with the determined order status code has entered the one ofthe plurality of geographic boundaries and that the order identified bythe determined order status code is incomplete and overdue.
 4. Themethod of claim 3, wherein the second notification message furtherincludes instructions to complete the order for the at least one itemassociated with the determined order status code.
 5. The method of claim3, wherein the predefined time is an estimated amount of time requiredfor the entering one of the plurality of customers to travel from alocation at which the entering one of the plurality of customers enteredthe one of the plurality of geographic boundaries to an order receivingarea outside of the one of the plurality of brick-and-mortar storesassociated in the database with the entered one of the plurality ofgeographic boundaries.
 6. The method of claim 3, wherein if the ordercompletion time is greater than the predefined time, (v) determining,with the processor, a revised order pickup time, and (vi) controlling,at least in part with the processor, the display monitor located at theorder pickup department to display a third notification messageincluding information indicating that the order identified by thedetermined order status code is incomplete and overdue, the thirdnotification message further including instructions to complete theorder identified by the determined order status code by the revisedorder pickup time.
 7. The method of claim 6, further comprising: withthe processor, associating in the database each of the plurality ofcustomer codes with communication information identifying a mobilecommunication device associated with a respective one of the pluralityof customers, and if the order completion time is greater than thepredetermined time, wirelessly transmitting to the mobile communicationdevice identified by the communication information associated in thedatabase with the one of the plurality of customer codes associated inthe database with the entering one of the plurality of customers, undercontrol of the processor, a second customer message for display on theidentified mobile communication device, the second customer messageincluding the revised order pickup time, and information indicating thatthe order for the at least one item associated with the determined orderstatus code is not complete but will be completed for pick up at acustomer waiting area outside of the one of the plurality ofbrick-and-mortar stores associated in the database with the entered oneof the plurality of geographic boundaries and at the revised orderpickup time.
 8. One or more non-transitory computer readable mediacontaining instructions for processing items ordered for customer pickupfrom a brick-and-mortar store of a retail enterprise, wherein executionof the instructions by one or more processors of a computing systemcause the one or more processors to: store in a database a plurality ofbrick-and-mortar store identification codes and associated geographicboundaries each identifying a different one of a plurality ofbrick-and-mortar stores of the retail enterprise and an associatedgeographic boundary defined at least partially about the one of theplurality of brick-and-mortar stores or an order receiving area adjacentthereto, store in the database a plurality of customer codes eachidentifying a different one of a plurality of customers of the retailenterprise, associate in the database with at least one of the pluralityof customer codes (a) an order status code identifying a status of anorder placed for at least one associated item for pickup by acorresponding one of the plurality of customers, and (b) one of theplurality of brick-and-mortar identification codes identifying the oneof the plurality of brick-and-mortar stores from which the order for theat least one associated item was placed, determine that one of theplurality of customers associated in the database with a correspondingone of the plurality of customer codes has entered one of the pluralityof geographic boundaries based on GPS tracking of a mobile communicationdevice associated in the database with the corresponding one of theplurality of customer codes, in response to determining that one of theplurality of customers has entered one of the plurality of geographicboundaries, determine whether the one of the plurality of customer codesassociated in the database with the entering one of the plurality ofcustomers is also associated in the database with an order status codeindicative of a pending order for pickup by the entering one of theplurality of customers of the at least one associated item, in responseto determining that the one of the plurality of customer codesassociated in the database with the entering one of the plurality ofcustomers is also associated in the database with an order status codeindicative of a pending order for pickup by the entering one of theplurality of customers of at least one associated item, determinewhether the one of the plurality of brick-and-mortar storeidentification codes associated in the database with the entered one ofthe plurality of geographic boundaries is also associated in thedatabase with the associated order status code, and in response todetermining that the one of the plurality of brick-and-mortar storeidentification codes associated in the database with the entered one ofthe plurality of geographic boundaries is also associated in thedatabase with the associated order status code and the associated orderstatus code indicates that the pending order for the at least oneassociated item is complete, control a display monitor located at anorder pickup department of the one of the plurality of brick-and-mortarstores to display a first notification message including informationindicating that the one of the plurality of customers associated withthe determined order status code has entered the one of the plurality ofgeographic boundaries and that the order identified by the determinedorder status code is complete.
 9. The one or more non-transitorycomputer readable media of claim 8, wherein execution of theinstructions by the one or more processors of the computing systemfurther cause the one or more processors to: associate in the databaseeach of the plurality of customer codes with communication informationidentifying a mobile communication device associated with a respectiveone of the plurality of customers, and if the determined order statuscode indicates that the pending order for the at least one associateditem is complete, wirelessly transmit to the mobile communication deviceidentified by the communication information associated in the databasewith the entering one of the plurality of customers, under control ofthe-processor, a first customer message for display on the identifiedmobile communication device, the first customer message includinginformation indicating that a completed order for the at least one itemassociated with the determined order status code is ready for pick up.10. The one or more non-transitory computer readable media of claim 8,wherein execution of the instructions by the one or more processors ofthe computing system further cause the one or more processors to:associate in the database with the one of the plurality of customercodes (d) a scheduled pickup time corresponding to at least one of acalendar date and time of day of a calendar at which the order for theat least one associated item is to be completed for pickup, and (e) anorder completion time corresponding to an estimated time required by theorder pickup department to complete the order for the at least oneassociated item, and in response to determining that the one of theplurality of brick-and-mortar store identification codes associated inthe database with the entered one of the plurality of geographicboundaries is also associated in the database with the order status codeindicative of the pending order for pickup of the at least oneassociated item, the determined order status code indicates that thepending order for pickup of the at least one associated item is not yetcomplete and a current calendar date or current time of day of a currentcalendar date is equal to or later than the scheduled pickup time, (iii)compare the order completion time associated in the database with theorder status code identifying the status of the order for pickup of theat least one associated item by the entering one of the plurality ofcustomers to a predefined time, and (iv) if the order completion time isless than or equal to the predefined time, control the display monitorlocated at the order pickup department to display a second notificationmessage including information indicating that the one of the pluralityof customers associated with the determined order status code hasentered the one of the plurality of geographic boundaries and that theorder identified by the determined order status code is incomplete andoverdue.
 11. The one or more non-transitory computer readable media ofclaim 10, wherein the second notification message further includesinstructions to complete the order for the at least one item associatedwith the determined order status code.
 12. The one or morenon-transitory computer readable media of claim 10, wherein thepredefined time is an estimated amount of time required for the enteringone of the plurality of customers to travel from a location at which theentering one of the plurality of customers entered the one of theplurality of geographic boundaries to an order receiving area outside ofthe one of the plurality of brick-and-mortar stores associated in thedatabase with the entered one of the plurality of geographic boundaries.13. The one or more non-transitory computer readable media of claim 10,wherein execution of the instructions by the one or more processors ofthe computing system further cause the one or more processors to: if theorder completion time is greater than the predefined time, (v) determinea revised order pickup time, and (vi) control the display monitorlocated at the order pickup department to display a third notificationmessage including information indicating that the order identified bythe determined order status code is incomplete and overdue, the thirdnotification message further including instructions to complete theorder identified by the determined order status code by the revisedorder pickup time.
 14. The one or more non-transitory computer readablemedia of claim 13, wherein execution of the instructions by the one ormore processors of the computing system further cause the one or moreprocessors to: associate in the database each of the plurality ofcustomer codes with communication information identifying a mobilecommunication device associated with a respective one of the pluralityof customers, and if the order completion time is greater than thepredetermined time, wirelessly transmit to the mobile communicationdevice identified by the communication information associated in thedatabase with the one of the plurality of customer codes associated inthe database with the entering one of the plurality of customers, undercontrol of the processor, a second customer message for display on theidentified mobile communication device, the second customer messageincluding the revised order pickup time, and information indicating thatthe order for the at least one item associated with the determined orderstatus code is not complete but will be completed for pick up at acustomer waiting area outside of the one of the plurality ofbrick-and-mortar stores associated in the database with the entered oneof the plurality of geographic boundaries and at the revised orderpickup time.
 15. A system for processing items ordered for customerpickup from a brick-and-mortar store of a retail enterprise, the systemcomprising: at least one database having stored therein a plurality ofbrick-and-mortar store identification codes and associated geographicboundaries each identifying a different one of a plurality ofbrick-and-mortar stores of the retail enterprise and an associatedgeographic boundary defined at least partially about the one of theplurality of brick-and-mortar stores or an order receiving area adjacentthereto, the at least one database further having stored therein aplurality of customer codes each identifying a different one of aplurality of customers of the retail enterprise, at least one processor,and at least one memory having instructions stored therein which, whenexecuted by the at least one processor, cause the at least one processorto: associate in the database with at least one of the plurality ofcustomer codes (a) an order status code identifying a status of an orderplaced for at least one associated item for pickup by a correspondingone of the plurality of customers, and (b) one of the plurality ofbrick-and-mortar identification codes identifying the one of theplurality of brick-and-mortar stores from which the order for the atleast one associated item was placed, determine that one of theplurality of customers associated in the database with a correspondingone of the plurality of customer codes has entered one of the pluralityof geographic boundaries based on GPS tracking of a mobile communicationdevice associated in the database with the corresponding one of theplurality of customer codes, in response to determining that one of theplurality of customers has entered one of the plurality of geographicboundaries, determine whether the one of the plurality of customer codesassociated in the database with the entering one of the plurality ofcustomers is also associated in the database with an order status codeindicative of a pending order for pickup by the entering one of theplurality of customers of the at least one associated item, in responseto determining that the one of the plurality of customer codesassociated in the database with the entering one of the plurality ofcustomers is also associated in the database with an order status codeindicative of a pending order for pickup by the entering one of theplurality of customers of at least one associated item, determinewhether the one of the plurality of brick-and-mortar storeidentification codes associated in the database with the entered one ofthe plurality of geographic boundaries is also associated in thedatabase with the associated order status code, and in response todetermining that the one of the plurality of brick-and-mortar storeidentification codes associated in the database with the entered one ofthe plurality of geographic boundaries is also associated in thedatabase with the associated order status code and the associated orderstatus code indicates that the pending order for the at least oneassociated item is complete, control a display monitor located at anorder pickup department of the one of the plurality of brick-and-mortarstores to display a first notification message including informationindicating that the one of the plurality of customers associated withthe determined order status code has entered the one of the plurality ofgeographic boundaries and that the order identified by the determinedorder status code is complete.
 16. The system of claim 15, wherein theinstructions stored in the at least one memory further includeinstructions which, when executed by the at least one processor, causethe at least one processor to: associate in the database each of theplurality of customer codes with communication information identifying amobile communication device associated with a respective one of theplurality of customers, and if the determined order status codeindicates that the pending order for the at least one associated item iscomplete, wirelessly transmit to the mobile communication deviceidentified by the communication information associated in the databasewith the entering one of the plurality of customers, under control ofthe-processor, a first customer message for display on the identifiedmobile communication device, the first customer message includinginformation indicating that a completed order for the at least one itemassociated with the determined order status code is ready for pick up.17. The system of claim 15, wherein the instructions stored in the atleast one memory further include instructions which, when executed bythe at least one processor, cause the at least one processor to:associate in the database with the one of the plurality of customercodes (d) a scheduled pickup time corresponding to at least one of acalendar date and time of day of a calendar at which the order for theat least one associated item is to be completed for pickup, and (e) anorder completion time corresponding to an estimated time required by theorder pickup department to complete the order for the at least oneassociated item, and in response to determining that the one of theplurality of brick-and-mortar store identification codes associated inthe database with the entered one of the plurality of geographicboundaries is also associated in the database with the order status codeindicative of the pending order for pickup of the at least oneassociated item, the determined order status code indicates that thepending order for pickup of the at least one associated item is not yetcomplete and a current calendar date or current time of day of a currentcalendar date is equal to or later than the scheduled pickup time, (iii)compare the order completion time associated in the database with theorder status code identifying the status of the order for pickup of theat least one associated item by the entering one of the plurality ofcustomers to a predefined time, and (iv) if the order completion time isless than or equal to the predefined time, control the display monitorlocated at the order pickup department to display a second notificationmessage including information indicating that the one of the pluralityof customers associated with the determined order status code hasentered the one of the plurality of geographic boundaries and that theorder identified by the determined order status code is incomplete andoverdue.
 18. The system of claim 17, wherein the instructions stored inthe at least one memory further include instructions which, whenexecuted by the at least one processor, cause the at least one processorto determine the predefined time as an estimated amount of time requiredfor the entering one of the plurality of customers to travel from alocation at which the entering one of the plurality of customers enteredthe one of the plurality of geographic boundaries to an order receivingarea outside of the one of the plurality of brick-and-mortar storesassociated in the database with the entered one of the plurality ofgeographic boundaries.
 19. The system of claim 17, wherein theinstructions stored in the at least one memory further includeinstructions which, when executed by the at least one processor, causethe at least one processor to: if the order completion time is greaterthan the predefined time, (v) determine a revised order pickup time, and(vi) control the display monitor located at the order pickup departmentto display a third notification message including information indicatingthat the order identified by the determined order status code isincomplete and overdue, the third notification message further includinginstructions to complete the order identified by the determined orderstatus code by the revised order pickup time.
 20. The system of claim19, wherein the instructions stored in the at least one memory furtherinclude instructions which, when executed by the at least one processor,cause the at least one processor to: associate in the database each ofthe plurality of customer codes with communication informationidentifying a mobile communication device associated with a respectiveone of the plurality of customers, and if the order completion time isgreater than the predetermined time, wirelessly transmit to the mobilecommunication device identified by the communication informationassociated in the database with the one of the plurality of customercodes associated in the database with the entering one of the pluralityof customers, under control of the processor, a second customer messagefor display on the identified mobile communication device, the secondcustomer message including the revised order pickup time, andinformation indicating that the order for the at least one itemassociated with the determined order status code is not complete butwill be completed for pick up at a customer waiting area outside of theone of the plurality of brick-and-mortar stores associated in thedatabase with the entered one of the plurality of geographic boundariesand at the revised order pickup time.